树
0.1
数据结构_第6章
|
文档
《数据结构:思想与实现(第2版)》(翁惠玉,俞勇) 第6章 树
注意:本章所有文件的编码都是UTF-8
./include
: 头文件./src
: 测试例程./doc
: HTML
和LATEX
文档HTML
文档打开方式:将./include
文件夹加入IncludePath
,编译./src
文件夹中的**单个**源文件。
g++
编译并运行test0.cc
find_last_of
,用于test0.cc
C/C++
调用DOS
命令删除文件,用于test0.hh
clock
,用于test0.hh
localtime
,用于test0.hh
binaryTree.hh
struct
的成员!否则无法使用列表初始化,除非定义构造函数。用于binaryTree.hh
(braced-initializer-list)。
&&
> ||
,在g++编译选项开启-Wextra
时,可能出现 ‘warning: suggest parentheses around ’&&' within '||'。详见gcc官方文档:[
-Wparentheses](https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#Warning-Options)
二叉树遍历的非递归实现是[用堆栈消除递归的一般方法](https://www.codeproject.com/Articles/418776/How-to-replace-recursive-functions-using-stack-and)的简化情况。教材给出的方法可视作一般方法的简单情况,于是此方法统一了教材给出的递归消除方案。用于[
binaryTree.hh`](include/binaryTree.hh)函数模板的特定实例作类模板的特定实例的友元:类模板内的友元声明是否可省略模板实参?binaryTree.hh
```cpp friend bool operator==</*T, Comparator*/>(const binaryTree /*<T, Comparator>*/ &lhs, const binaryTree /*<T, Comparator>*/ &rhs); friend void printBinaryTree</*T, Comparator*/>(const binaryTree /*<T, Comparator>*/ &bin_tree, const typename binaryTree /*<T, Comparator>*/ ::value_type &flag, std::ostream &out); ```
std::move()
的后果:实参变右值,语句执行完毕后被析构,变成**过期对象**。BinNode *root_