您的位置:首页 > 编程语言 > C语言/C++

Binary Search Tree Insertion in C++

2014-01-04 15:26 344 查看
1 #include <iostream>
#include <cstdlib>
struct BSTNode{
int v;
struct BSTNode *left,*right;
};

struct BSTNode *root=NULL;

struct BSTNode* createNode(int data){
struct BSTNode *newNode;
newNode=(struct BSTNode*)malloc(sizeof(struct BSTNode));
newNode->v=data;
newNode->left=NULL;
newNode->right=NULL;
return newNode;
}

void insertion(struct BSTNode **node,int data){
if(*node==NULL){
*node=createNode(data);
}else if(data<(*node)->v){
insertion(&(*node)->left,data);
}else if(data>(*node)->v){
insertion(&(*node)->right,data);
}
}
void traverse(struct BSTNode *node){
if(node!=NULL){
traverse(node->left);
std::cout<<node->v;
traverse(node->right);
}
return;
}
int main(){
int data,ch;
insertion(&root,10);
insertion(&root,16);
insertion(&root,8);
insertion(&root,20);
insertion(&root,21);
traverse(root);
std::cin>>data;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: