前面写过一些关于递归的文章,因为那时还没有写到树,因此也举不出更有说服力的例子,只是阐述了“递归是一种思想”,正像网友评价的,“一篇入门的文章”。但只要能能让你建立“递归是一种思想”这个观念,我的努力就没有白费。现在,讲完了二叉搜索树,终于有了能说明问题的例子了。按照前面提供的代码,应该能调试通过下面的程序。
#include
usingnamespacestd;
#include
#include
#include"BSTree.h"
#include"Timer.h"
#definerandom(num)(rand()%(num))
#definerandomize()srand((unsigned)time(NULL))
#defineNODENUM200000//nodenumber
intdata[NODENUM];
voidzero(int&t){t=0;}
intmain()
{
BSTree
for(i=0;i
for(i=0;i
t.start();for(i=0;i
cout<<"Inserttime:"<
t.start();for(a.first();a.get()!=NULL;a.next())a.get()->data=0;
cout<<"Non-Stacktime:"<
t.start();a.LevelOrder(zero);cout<<"LevlOrdertime:"<
t.start();a.PreOrder(zero);cout<<"PreOrdertime:"<
t.start();a.InOrder(zero);cout<<"InOrdertime:"<
t.start();a.PostOrder(zero);cout<<"PostOrdertime:"<
return0;
}
gmail.com