Chinaunix首页 | 论坛 | 博客
  • 博客访问: 181881
  • 博文数量: 64
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 616
  • 用 户 组: 普通用户
  • 注册时间: 2015-06-09 20:25
文章分类

全部博文(64)

文章存档

2016年(25)

2015年(39)

我的朋友

分类: C/C++

2016-02-22 19:37:08

class Node
{
public:
int data;
Node *parent;
Node *left;
Node *right;
public:
Node() : data(-1), parent(NULL),left(NULL),right(NULL){};
Node(int num) :data(num),parent(NULL),left(NULL),right(){};
};
class Tree
{
public:
Tree(int num[],int len);
void insertNode1(int data);
void insertNode(int data);
Node *searchNode(int data);
void deldteNode(int data);
private:
void insertNode(Node* current,int data);
Node *searchNode(Node* current,int data);
void deleteNode(Node* current);
private:
Node* root;
};
void Tree::insertNode(int data)
{
Node *p,*par;
Node *newNode = new Node(data);


p=par=root;
while(p!=NULL)
{
par =p;
if(data>p->data)
p=p->right;
else if(datadata)
p=p->left;
else if(data==p->data)
{
delete newNode;
return;
}
}
newNode->parent =par;
if(par->data>newNode->data)
par->left = newNode;
else
par->right =newNode;
}

阅读(1244) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~