- 博客(8)
- 资源 (7)
- 收藏
- 关注
转载 二叉树 - 后序遍历
流程: left子节点(包括其子树)-> 节点 -> right子节点。 非递归形式: //后序遍历 public static void postOrder(Node root){ Stack stack = new Stack(); Node node = root; Node prev = node;
2014-03-30 12:39:35 714
原创 二叉树 - 中序遍历
流程: left子节点(包括其子树)-> 节点 -> right子节点。 非递归形式: //中序遍历 public static void inOrder(Node root){ Stack stack = new Stack(); Node node = root; while(node != null
2014-03-30 12:36:13 612
原创 二叉树 - 先序遍历
流程: 节点 -> left子节点(包括其子树)-> right子节点(包括其子树)。 非递归形式: //先序遍历 public static void preOrder(Node root){ Stack stack = new Stack(); Node node = root; while(node != null |
2014-03-30 12:33:25 861
原创 提纲
排序算法: 1, 冒泡排序;2, 选择排序;3, 插入排序;4, 希尔排序;5, 堆排序;6, 合并排序;7, 快速排序;8, 桶式排序。 二叉树: 1, 先序遍历;2, 中序遍历;3, 后序遍历;
2014-03-28 10:25:48 761
原创 Java自加(i++)的所谓缓存变量
在面试书上看到一个非常变态的面试题,考的是Java的后自加(j++)操作。 public static void main(String[] args){ int j = 0; for(int i=0; i<100; i++){ j = j++; } System.out.println(j); } 运行结果是0.首先简化一下问题: pu
2014-03-25 11:50:16 1608
原创 快速排序 Java实现
/** * 快速排序 * * 采用经典的分治思想,是一种原地排序,平均是O(NlogN). * * 基本思想: * 1,选取第一个元素为基元key; * 2,遍历数组,将比key小的元素放在key左边,比key大的元素放在key右边; * 3,分别对两边进行快排。 * * 具体实施(假设第一个元素下标是start,最后一个元素小标是end): * 1,选取数组第一个元素为
2014-03-25 11:42:24 981
原创 选择排序 Java实现
/** * 选择排序 * * 基本思想: * * 首先在未排序序列中找到最小元素,存放在排序序列的起始位置,再从剩余 * 未排序元素中继续寻找最小元素,然后放到已排序序列末尾; * 直到所有元素均排序完毕。 * * 算法流程: * 1.外循环i遍历[0, length-1), 并将i赋给min,其中min用来记录最小元素位置; * 2.内循环j遍历[i+
2014-03-25 11:32:14 867
原创 冒泡排序Java实现
/** * 冒泡排序 * * 基本思想:通过不断交换相邻元素,使得最大元素沉到池底。 * * 算法流程 * 1,i从末尾向前遍历 (0, length-1] * 2,j遍历[0,i),如果arr[j]>arr[j+1],则交换两元素,这样[0,i)中最大元素就沉到i位置 * 3,i遍历完后,则数组排好序 * * 时间复杂度O(n^2) * */
2014-03-25 11:30:22 884
Java核心技术第8版 卷I 基础知识part2 中文版 有目录可标记
2013-01-08
Java核心技术第8版 卷I 基础知识part1 中文版 有目录可标记
2013-01-08
Java核心技术第8版 卷II 高级特性part3 中文版 有目录可标记
2013-01-08
Java核心技术第8版 卷II 高级特性part2 中文版 有目录可标记
2013-01-08
Java核心技术第8版 卷II 高级特性part1 中文版 有目录可标记
2013-01-08
C++程序间消息模式通信(VS2010工程文件)
2012-11-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人