1. 二叉查找树 二叉查找树(Binary Search Tree)/ 有序二叉树(ordered binary tree)/ 排序二叉树(sorted binary tree) 1). 若任意节点的左子树不空,则左子树上所有结点的值均小于它的根结点的值; 2). 若任意节点的右子树不空,则右子树上 ...
分类:
编程语言 时间:
2016-04-22 16:04:12
阅读次数:
205
1. 基本术语 度(degree):一个节点的子树个数称为该节点的度; 树中结点度的最大值称为该树的度。 层数(level):从根结点开始算,根节点为1 高度(height)/深度(depth):节点的最大层数 2. 二叉树性质 满二叉树: 完全二叉树: 3. 二叉树的存储结构 1)顺序存储结构 2 ...
分类:
编程语言 时间:
2016-04-22 12:01:11
阅读次数:
310
1. 栈 1.1 分类 顺序栈:顺序线性表实现 链式栈:单向链表存储堆栈 1.2栈的应用 1)数制转换 import java.util.Scanner; import java.util.Stack; public class Tran{ public static void main(Strin ...
分类:
编程语言 时间:
2016-04-21 18:31:16
阅读次数:
251
1. LinkedList简介 LinkedList 是一个继承于AbstractSequentialList的双向链表。它也可以被当作堆栈、队列或双端队列进行操作。LinkedList 实现 List 接口,能对它进行队列操作。LinkedList 实现 Deque 接口,即能将LinkedLis ...
分类:
编程语言 时间:
2016-04-21 16:37:39
阅读次数:
295
指出依序访问图4-61中的伸展树中关键字3,9,1,5后的结果。
图4-61
1.原理
这里主要涉及到两种旋转方式:
1)之子型旋转
2)一字型旋转
这两种方式实际有一点差别:
之子型旋转是两次单旋转的组合,而且都可以看成是将目标节点父节点的选转(后面实例进行说明)...
分类:
编程语言 时间:
2016-04-18 11:57:16
阅读次数:
291
Solution 1 : (数据结构与算法分析 C++描述 第三版) template void shellSort(vector &v) { for(int gap = v.size() / 2; gap > 0; gap /= 2) { for(int i = gap; i = gap && t... ...
分类:
系统相关 时间:
2016-03-26 12:04:38
阅读次数:
192
说到线性结构的话,我们可以根据其实现方式分为三类: 1)顺序结构的线性表 2)链式结构的线性表 3)栈和队列的线性表 1、顺序结构的线性表 所谓顺序存储,指的是两个元素在物理上的存储地址和逻辑上的存储地址是一致的,逻辑上相邻的两个元素,它们在物理中存储的地址 也是相邻的。对于jdk中典型的应用就是L
分类:
编程语言 时间:
2016-03-23 14:30:06
阅读次数:
218
计算四则运算表达式主要是分两步运算 第一步是把 中缀表达式 转换成 后缀表达式。参考大一下期学的 《数据结构与算法分析--C语言描述》3.3.3 教材,完成下列代码: static String mid_to_suf(String str){ Stack<Character> s = new Sta
分类:
编程语言 时间:
2016-03-06 23:28:57
阅读次数:
210
【0】README 1) 本文部分内容转自 数据结构与算法分析,旨在理解 高级数据结构实现——自顶向下伸展树 的基础知识; 2) 源代码部分思想借鉴了数据结构与算法分析,有一点干货原创代码,for original source code, please visithttps://github.co
分类:
其他好文 时间:
2016-01-30 02:31:32
阅读次数:
259