二叉搜索树:
二叉树的查找很简单,先序后序中序都可以,一开始要判断是否为空。
插入要判断一下是否存在,查找时同时记录其父节点,然后直到找到空节点,插入。
删除比较复杂一点:
逐一判断:
先判断是否为空,然后查找到要删除的节点p,并记录其父节点q,如果查不到,返回false;
当p节点有两个子树时,查到其中序遍历的后继节点,即排序后的之后以为,记为s。查找的同时记录s的父节点r,然后将s...
分类:
其他好文 时间:
2014-09-18 22:22:54
阅读次数:
278
今天学习到二叉树的时候,看到了二叉树的先序,后序,中序遍历方法。然而二叉树遍历方法递归实现十分简单,迭代版本实现起来些许复杂,就又上手试试二叉树的各种遍历方法以及实现版本,当是温习一遍之前了解到的实现方法。 三种遍历方法中递归实现难度相当,代码相当简略。 三种遍历方法中利用栈实现的迭代版本中...
分类:
其他好文 时间:
2014-08-29 23:50:08
阅读次数:
443
#include#includetypedef struct node { int data;
struct node *lchild,*rchild;};node * create()//先序建立二叉树,根左右{ int x=0; node *t;
printf(" input data:"); ...
分类:
其他好文 时间:
2014-05-11 01:19:08
阅读次数:
311