- 博客(3)
- 资源 (2)
- 收藏
- 关注
原创 剑指offer-二叉搜索树的第K个节点
剑指offer-二叉搜索树的第K个节点题目描述 给定一颗二叉搜索树,请找出按序排列的第K个的节点。 输入: 5 / \ 3 7 / \ / \ 2 4 6 8 输出:若K=3,则输出4解题思路二叉搜索树性质可知,左子树所有节点均小于当前节点,右子树节点均大于当前节点。可以根据左子树数量确定第K个节点位置。1、若左子树节点数为K,则第K个节点为左子树的最
2017-04-11 11:21:30 572
原创 AVL平衡树递归删除实现 C语言
接上一篇插入之后,又折腾写了AVL递归删除例程,主要难点在于删除后保证路径上的节点高度值有效。思路已在例程中说明参考了http://www.cnblogs.com/skywang12345/p/3576969.html,该文章中的删除例程未考虑删除之后恢复高度值,导致删除节点后失衡。后又参考了http://www.cppblog.com/cxiaojia/archive/2015/07/20/18
2016-09-23 21:34:37 874 2
原创 AVL平衡树插入非递归实现 C语言
看了数据结构与算法树一章,决心写出AVL平衡树非递归插入算法。折腾两个晚上终于弄完,其中用到了C++中的栈模板,实在不想在写一个栈了。 总体实现思路如下: 1. 若为空直接创建树 2. 查找插入位置 3. 插入 4. 计算新树节点高度 5.平衡新树 AvlTree InsertWithoutRecursion(int X, AvlTree T) { /** insert node into
2016-09-22 21:09:23 1079 1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人