昨天的儿茶搜索树撸了帮个小时只剩下删除没有做,今晚继续撸删除,嗯已经完成了,删除是要分成好几种情况的,比较复杂一点点。想画个图画不出来,算了,直接代码
https://github.com/YanglongjunLAX/arithmetic/blob/master/searchTree.cpp
可以直接看的。
很久不用C++写代码,而且直接用vim编译,然后使用g++,错误比较难找
编译完之后运行a.out一直提示段错误,是访问了不该访问的内存。还原一下半天终于找到了,还原一下错误场景
voidsearchTree::_destoryAllNodes(Node *node){ if (node) { _destoryAllNodes(node->left); _destoryAllNodes(node->right); printf("freeNode %d\n",node->data); free(node); node = NULL; }}
把printf函数写在了free后面了,多么幼稚的错误呀……10分钟时间就用来找这个ERROR了。。。
二叉搜索树结贴。
本来以为一个小时能搞定,结果花了两个小时……
最后这个幼稚的错误,又花了好久……
问题,没有用模板,本来应该头文件和cpp分开。原因是makefile忘了怎么写了就将就了,
下次争取用makefile