算法导论---Java实现
文章平均质量分 69
feige1990
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
算法之排序小结1---插入排序(Java)
public class InsertSort { /** * @param args */ public static void sortInsert(int []A) { for(int j = 1; j int key = A[j]; int i = j-1; while(i >= 0 && A[i] > key){// 要注意 这个i >= 0 A[i+1]原创 2014-10-11 16:41:25 · 370 阅读 · 0 评论 -
算法之排序小结2---归并排序(Java)
package com.sortdemo;/* * 很多算法在结构上递归的,为了解决一个给定的问题,算法要一次或多次的递归调用其自身来 * 解决相关的问题。这些算法通常采用分治策略:将原问题划分成n个规模较小的而结构与原问题 * 相似的子问题,然后在合并其结果,得到原问题的解。 * 分治模式在每一层递归上都有三个步骤: * 分解(Divide) :将原问题分解为一系列子问题 * 解决(Conque原创 2014-10-14 18:23:28 · 444 阅读 · 0 评论 -
获得连续子数组的最大和(见算法导论第三版第三章)
package com.sortdemo; /** * 获得连续子数组的最大和 * */ public class MaxSubArraySum { private static long getMax(long a, long b) { return a > b ? a : b; } /** * 获得连续子数组的最大和 * 隐含的问题: * 1.所有负值的最大值原创 2014-10-15 18:52:07 · 718 阅读 · 0 评论 -
算法之排序小结3---堆排序(Java)
public class heapSort { //维护最大堆性质的重要过程.即每次调整都是 //从父节点、左孩子节点、右孩子节点三者中选择最大者跟父节点进行交换(交换之后可能造成被交换的孩子节点不满足堆的性质,因此每次交换之后要重新对被交换的孩子节点进行调整)。 public static void maxHeapModiify(int []A, int i,int size){原创 2014-10-20 14:27:20 · 478 阅读 · 0 评论
分享