算法
文章平均质量分 58
a343315623
这个作者很懒,什么都没留下…
展开
-
二叉查找树(AVL)插入算法Java实现
public static class Node { int data; Node left; Node right; int height; }; public int Height(Node p) { if (p == null) { return -1; } else { return p.height; }原创 2016-05-17 17:20:32 · 333 阅读 · 0 评论 -
高效排序算法(希尔排序)
static void shellSort(int[] data){ int sizeOfSeq=0; //分割的次数,即由步长所构成序列的长度,由以下动态求出 for(int h=1;h sizeOfSeq++;原创 2016-05-17 17:21:18 · 277 阅读 · 0 评论 -
高效排序算法(快排序)
public static void quickSort(int start, int end) { int x = data[start]; int pLeft = start, pRight = end;// 以第一个数为参照做比较 if (pLeft >= pRight){ return; } while (pLeft while (pLeft =原创 2016-05-17 17:21:49 · 380 阅读 · 0 评论 -
基本排序算法
对10000个完全无序的随即数据排序表明,效率上:插入排序>选择排序>冒泡排序,效率差为2.3倍和1.75倍,即插入排序是冒泡排序的4.3倍。 插入排序: public int[] insertSort(int[] data) { for(int i=1,j;i int tmp = data[i];原创 2016-05-17 17:22:22 · 312 阅读 · 0 评论 -
二叉树遍历非递归
先序遍历: public void preorderIterative() { Stack stack = new Stack(); Node p = root; if (p != null) { stack.push(p); while (!stack.empty()) { p = stack.pop(); visit(p); i原创 2016-05-17 17:22:50 · 454 阅读 · 0 评论