![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
文章平均质量分 64
铁头瓜娃子
快乐生活!
展开
-
关于BST的插入,查找和删除
一、建立BST节点结构struct node { int key; node *parent,*left,*right; };同时定义一个跟节点和一个空节点node *NIL,*root;二 、进行插入操作 首先判断树中如果没有节点,那么直接将要插入的节点当做根节点,并且设置它的父节点为NIL; 如果树中有根节点了,那么定义两个node节点x和y,x指向需要插到的位置,y指向x的父节原创 2017-08-11 22:26:26 · 1578 阅读 · 0 评论 -
Dijkstra算法
Dijkstra算法原创 2017-08-13 14:07:35 · 2154 阅读 · 2 评论 -
BST树的插入,删除,查找(递归和非递归),先序,中序,后序(递归和非递归)
关于二叉查找树的操作还是挺重要的,所以在此实现了BST的相关操作。 一、BST树的相关定义 二叉查找树(Binary Search Tree),(又:二叉搜索树,二叉排序树)它或者是一棵空树,或者是具有下列性质的二叉树: 若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值; 若它的右子树不空,则右子树上所有结点的值均大于它的根结点的值; 它的左、右子树也分别为二叉排序树。 ...原创 2018-05-22 21:23:54 · 939 阅读 · 0 评论 -
AVL树的插入,删除,查找
在上一篇文章中回顾了BST的相关操作,而AVL树其实就是BST的基础上加上了平衡的条件限制。也就是针对把每个节点作为根节点的树中的左右子树的高度差不能相差超过一。首先贴出整个程序的代码:class TreeNode { int value; int height; TreeNode left; TreeNode right; TreeNode(int va...原创 2018-05-29 17:08:45 · 1851 阅读 · 1 评论