摘要:
1,树的类型定义2,二叉树的类型定义3,二叉树的存储结构4,二叉树的遍历5,线索二叉树6,树和森林的表示方法7,树和森林的遍历8,哈弗曼树和哈弗曼编码一,树的定义 1,数据对象D:D是具有相同特性的数据元素的集合 2,数据关系R:若D为空集,则称为空树。 否则: (1)在D中存在唯一的称为根的数据元素root。 (2)当n>1时,其余节点可分为m(m>0)个互不相交的有限集T1,T2,....Tm,其中每 一棵子集本身又是一棵符合本定义的树,称为根root的子树。3,基本操作: 查找类,插入类,删除类。查找类: Root(T) //求树的根节点 Value(T,cur_... 阅读全文
摘要:
条款2:尽量用const和inline而不用#define 1,用#define一个符号名代替某个常数时,预处理器在编译前就将其替换,所以编译器无法获得该符号名的任何信息,而以后的发生关于该符号名的一些错误可能很令人费解。 2,用#define实现那些看起来象函数而又不会导致函数调用的宏,可能产生很多缺陷和问题。可以直接使用inline函数调用。条款3:尽量使用而不用 1,stdio.h中的scanf和printf虽然很好用,但是不是类型安全的且没有扩展性。而使用iostream中的>操作符却恰恰很好的解决了这个问题。 2,使用>,编译器可以自动根据变量类型选择操作符的不同形式,不 阅读全文