首页 > 其他分享 >读书笔记三

读书笔记三

时间:2025-01-10 17:14:43浏览次数:1  
标签:读书笔记 控制结构 算法 循环 排序 优化

《代码大全》读书笔记3:控制结构与算法优化

《代码大全》中关于控制结构与算法的内容,为我打开优化程序逻辑与性能的大门。

控制结构是程序流程的方向盘,书中对顺序、选择、循环结构的深入剖析,让我明白如何精准运用它们实现复杂逻辑。编写选择结构时,合理组织条件判断,避免嵌套过深导致逻辑混乱。例如使用“卫语句”提前处理特殊情况,让主逻辑更清晰。循环结构中,明确循环终止条件,防止死循环,同时优化循环体内代码,减少不必要计算。

算法部分则是提升程序效率的核心。书中详细讲解各种算法,从简单排序到复杂搜索算法,让我认识到不同算法适用场景。在实际项目中,根据数据规模和特点选择合适算法至关重要。如数据量小的排序场景,冒泡排序简单易实现;大数据量时,快速排序或归并排序效率更高。理解算法复杂度,能预估算法性能,指导算法优化。

学习这些内容后,我在编程时更注重控制结构的合理性与算法的优化选择,力求让程序逻辑清晰、运行高效。

标签:读书笔记,控制结构,算法,循环,排序,优化
From: https://www.cnblogs.com/zhaoyaxuan2024/p/18664280

相关文章

  • 读书笔记五
    《代码大全》读书笔记5:调试与测试的艺术《代码大全》中调试与测试相关内容,让我认识到这两项工作是保障代码质量的关键环节,充满技巧与艺术。调试是在代码出现问题时寻找根源并解决的过程。书中介绍多种调试方法,如蛮力法、归纳法、演绎法等。蛮力法虽简单直接,但效率低,适用于问题较......
  • 读书笔记
    《程序员修炼之道-从小工到专家》吐血解读博文视点Broadview2021年08月13日18:16听全文以下文章来源于iOS成长之路,作者zhangferry本篇文章是对《程序员修炼之道:从小工到专家》一书的总结和解读。该书作者是AndrewHunt和DavidThomas。他们都是敏捷宣言的17个创始者......
  • 读书笔记6
    第22节:死程序不说谎1、对待程序我们通常会有“它不会发生”的心理状态,这会导致我们忽视一些问题。对于注重实效的程序员来说,如果我们忽略了一个错误,将是非常糟糕的事情。2、我们一些异常情况,我们应该及早崩溃,用于强调问题的存在。3、引起崩溃的时候不要造成破坏,比如申请的资源还......
  • 读书笔记7
    第26节解耦与得墨忒(tei)耳法则1、把你的代码组织成最小单位(模块),并限制他们之间的交互。如果随后必须替换某个模块,其他模块仍能够继续工作。2、应使耦合减至最少。对象间直接的横贯关系,有可能很快带来依赖关系的组合爆炸。比如对某个模块的“简单”改动会传遍系统中的一些无关模块......
  • Effective C++读书笔记——item12(自定义拷贝构造函数和拷贝赋值运算符可能出现的问题
    1.拷贝函数相关背景及编译器行为在面向对象系统中,拷贝构造函数和拷贝赋值运算符统称为拷贝函数,若不自行声明,编译器会按需生成默认的拷贝函数,其会拷贝被拷贝对象的全部数据。但当自行声明拷贝函数后,编译器若发现实现存在错误,往往不会主动提示,比如在新增数据成员却未更新拷贝函......
  • Effective C++读书笔记——item11(自赋值)
    自赋值相关问题自赋值情况示例明显的自赋值如w=w,还有不太容易辨别的情况,像a[i] =a[j](当i和j值相同)、*px=*py(当px和py指向同一对象)等,这些是由别名(有多种引用对象的方式)造成的,尤其在涉及引用、指针操作同类型多个对象以及继承体系中基类和派生类对象引用、指针转换时要考......
  • 《任何一种能够作为科学出现的未来形而上学导论》读书笔记2
    前言第一节形而上学的源泉原文如果想要把一种知识建立成为科学,那就必须首先能够准确地规定出没有任何一种别的科学与之有共同之处的、它所特有的不同之点;否则各种科学之间的界线就分不清楚,各种科学的任何一种就不能彻底地按其性质来对待了。这些特点可以是对象的不同,或者......
  • 《任何一种能够作为科学出现的未来形而上学导论》读书笔记1
    《任何一种能够作为科学出现的未来形而上学导论》其实算是《纯粹理性批判》的导读,众说周知康德的书不是一般的难以理解,所以《纯粹理性批判》出版的时候很多人是看不懂康德的思想的,甚至对其有所误解,所以康德又写了这本“导论”,并写下“如果有谁对于我作为导论而放在一切未来形而上......
  • Effective C++读书笔记——item8(析构函数与异常)
    析构函数引发异常的问题异常同时存在的隐患:C++虽未禁止在析构函数中引发异常,但坚决阻止这样做。以std::vector等容器包含对象为例,当容器析构时要析构其中元素,若在析构元素(如Widget类对象)过程中连续抛出异常,出现两个或多个活动异常时,程序可能会终止或者出现未定义行为,使用其......
  • Effective C++读书笔记——item2(const,enum,inlines取代#define)
    关于用常量取代#define的总体原则在编程中,应尽量减少预处理器(特别是#define)的使用,可通过合适的替代方式来避免#define带来的诸多问题,虽然不能完全消除预处理器相关指令(如#include、#ifdef/#ifndef仍有重要作用),但要让其使用频率降低。简单常量方面问题阐述:使用#defi......