//
// main.cpp
// niukewang
//// created by ** on 2019/8/17.
//#include #include using namespace std;
//二叉搜尋樹的查詢,新增和刪除
struct treenode
};//二叉搜尋樹的新增
treenode* insert(treenode* bst,int data)elseelse if(data > bst->val)
//如果元素已經存在,什麼都不做
}return bst;
}//二叉樹的查詢
treenode * find(treenode* bst,int data)else if(data > bst->val)else
}return bst;
}//查詢最小值結點
treenode * findmin(treenode* bst)
}return bst;
}//查詢最大值結點
treenode * findmax(treenode* bst)
}return bst;
}//刪除結點
treenode * deletenode(treenode *bst,int data)else if(data < bst->val)else if(data > bst->val)elseelseelse if(bst->right)else
delete temp;//釋放記憶體}}
return bst;
}void preorder(treenode* bst)
}void inorder(treenode* bst)
}int main(int argc, const char * ar**)
(二叉樹)二叉搜尋樹的查詢 插入和刪除
二叉搜尋樹或者是一棵空樹,或者是具有下列性質的二叉樹 若它的左子樹不空,則左子樹上所有結點的值均小於它的根結點的值 若它的右子樹不空,則右子樹上所有結點的值均大於它的根結點的值 它的左 右子樹也分別為二叉搜尋樹。二叉搜尋樹的特點之一即是其中序遍歷為公升序。根據二叉搜尋樹的性質,每個結點的值都是大於其...
二叉搜尋樹的插入,查詢,刪除
include using namespace std template class node 預設析構函式 templatenode node template node node t value template class bstree 預設析構 void buildbstree 建立二叉樹 ...
二叉搜尋樹的查詢 插入 刪除
coding utf 8 time 2020 9 23 15 56 author julyli file bst.py class bitreenode def init self,data self.data data self.lchild none self.rchild none self....