算法第一章作业
代码规范学习
规则1:程序块要采用缩进风格编写,缩进风格为4个空格;
规则2:缩进或对齐只能用空格键;
规则3:相对独立的程序块,变量说明之后必须加空行;
规则4:较长的语句(>80字符)必须分行书写;
规则5:不允许多个短语句写在一行中,必须分行书写;
规则6::if、for、do、while、case、switch、default default default 等语句自占一行 等语句自占一行,且 if、for、 do、while 等语句的执行语句部分无论多少都要加括号 等语句的执行语句部分无论多少都要加括号{};
规则7:代码行之内应该留有适当的空格;
规则8:程序块的分界符 :程序块的分界符(如 C/C++语言的大括号‘{’和‘}’)应各独占一行并且 应各独占一行并且 位于同一列,同时与引用它们的语句左对齐 ,同时与引用它们的语句左对齐。在函数体的开始 。在函数体的开始、类的定义、结构的定义、 枚举的定义以及 if、for、do、while、switch、case 语句中的程序都要采用如上的缩 语句中的程序都要采用如上的缩进方式。
规则9:注释的版式 :注释也需要与代码一样整齐排版 (1)注释应与其描述的代码相近,对代码的注释应放在其上方或右方(对单条语句的 注释)相邻位置,不可放在下面,如放于上方则需与其上面的代码用空行隔开。 (2)注释与所描述内容进行同样的缩排。( 3)将注释与其上面的代码用空行隔开。 (4)变量、常量、宏的注释应放在其上方相邻位置或右方;
规则10:注释应该和代码同时更新 :注释应该和代码同时更新,不再有用的注释要删除 ,不再有用的注释要删除。
规则11:对于所有有物理含义的变量 :对于所有有物理含义的变量、常量,如果其命名不是充分自注释的 ,如果其命名不是充分自注释的,在声明 时都必须加以注释,说明其物理含义 ,说明其物理含义。
规则12:数据结构声明 :数据结构声明(包括数组、结构、类、枚举等),如果其命名不是充分自注释 如果其命名不是充分自注释 的,必须加以注释。对数据结构的注释应放在其上方相邻位置 。对数据结构的注释应放在其上方相邻位置,不可放在下面 ,不可放在下面;对结构 中的每个域的注释可放在此域的右方。
规则13:注释不宜过多,也不能太少,源程序中有效注释量控制在 ,源程序中有效注释量控制在 20%~30%之间
规则14:命名尽量使用英文单词,力求简单清楚 ,力求简单清楚,避免使用引起误解的词汇和模糊的 ,避免使用引起误解的词汇和模糊的 缩写,使人产生误解 ,使人产生误解;
规则15:对于变量命名,禁止取单个字符 ,禁止取单个字符(如 i、j、k…),建议除了要有具体含义 外,还能表明其变量类型 还能表明其变量类型、数据类型等,但 i、j、k 作局部循环变量是允许的;
《数学之美》读后感
在浏览这本书的第一章的时候我真的发现这本书第一点美在哪了,虽然内容上还是没有很有趣,但是作者的语言让书比数学教材有趣生动多了。而且也算是打破了我对数学的一些局限认知。第一章作者从原始人类的通信方式入手来讲,其实真的挺好玩挺有趣的,作者指出人类最早利用声音进行的通信有依赖于开篇提到的“编码—传输—解码”的基本原理,其实原始人的通信方式和现在的也没什么不同,而这个世界上近现代最普遍的原理其实在人类发展历史上也在被无意识的使用着。
第一章的主题是文字和语言vs数字和信息,归纳一下的话主要是以下几点内容:
1.无论是语言还是数学的产生其实都是为了相同一个目的——记录和传播信息;;
2.语言文字如果单单只是按照意思来聚类,会带来一些歧义性。有了上下文,大多数情况下多义字的去处歧义都可以做到。
3.不同的文字系统在记录信息上的能力是等价的,文字只是信息的载体,而非信息本身。
4.信息的冗余是安全的保障。语言的数据,即语料,是从事机器翻译研究的基础。
5.在通信时,如果信道较宽,信息不必压缩就可以直接传递,而如果信道很窄,信息在传递前需要尽可能的压缩,然后在接收端进行解压缩。
6.词可以被认为是有限而且封闭的集合,而语言则是无限和开放的集合。
其实在看得时候好像可以体会到那种语言与数学之间就像人与自然得接口一样,其实数学也是一门语言吧,属于大自然得一门神奇得语言,我们如果能从它逻辑理论得演绎出发去体会,也许真的能感受到数学不一样得美,也能对数学有更深层次的认识和理解!