数据结构二叉排序树操作源代码(7页).doc
《数据结构二叉排序树操作源代码(7页).doc》由会员分享,可在线阅读,更多相关《数据结构二叉排序树操作源代码(7页).doc(7页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-数据结构二叉排序树操作源代码:#includeusing namespace std;#define TRUE 1;#define FALSE 0;typedef int T;const maxsize=50;template struct NodeT key;/*.*/;template struct bitreeNode data; bitree *lchild;bitree *rchild;template class BSTreepublic:Node *ST;int len; /无素个数bitree *t;/根指针bitree *f;/根指针的双亲指针bitree *p;/指向查找
2、路径上最后访问的节点BSTree();/构造函数BSTree();/析构函数void SearchBST(bitree *t,T key);/二叉排序树查找void InsertBST(bitree *(&t),Node e);/元素插入int DeleteBST(bitree *(&t),T key);/二叉排序树中元素删除int Delete(bitree *(&p);/void DeleteElem(T key);/查找表元素删除void InDisplay(bitree *t);/中序遍历二叉排序树void Display();/查找表显示;template BSTree:BSTree
3、()/构造函数,初始化查找表ST=new Nodemaxsize;/顺序存放查找表len=0;t=NULL;/查找树初始化template BSTree:BSTree()/析构函数,销毁查找表delete ST; len=0;delete t;cout成功销毁二叉排序树n;template void BSTree:SearchBST(bitree *t,T key)/元素查找 if(t=NULL | key=t-data.key)if(key=t-data.key) cout找到key的节点endl;elsecout不存在key的节点endl;else if(keydata.key)Searc
4、hBST(t-lchild,key);elseSearchBST(t-rchild,key);template void BSTree:InsertBST(bitree *(&t),Node e)/元素插入STlen=e;len+; p=t; while(p)if(p-data.key=e.key)cout二叉排序树中已经存在值为:e.key的节点n;exit(1);f=p;if(e.keydata.key)p=p-lchild;elsep=p-rchild;p=new bitree;p-data=e;p-lchild=p-rchild=NULL;if(t=NULL)t=p;elseif(e.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 二叉排序树 操作 源代码
限制150内