文章分类 -  算法导论

摘要:结合这两篇文章,使用dp求解,便于理解 http://www.cnblogs.com/en-heng/p/3963803.html http://www.cnblogs.com/xudong-bupt/archive/2013/03/15/2959039.html 状态转移方程 矩阵求解 矩阵求解过 阅读全文
posted @ 2016-09-20 10:34 桃源仙居 阅读(100) 评论(0) 推荐(0)
摘要:最长公共子序列不要求连续,连续的那叫公共子串 结合这两篇文章,使用dp求解,便于理解 http://www.cnblogs.com/en-heng/p/3963803.html http://www.cnblogs.com/xudong-bupt/archive/2013/03/15/2959039 阅读全文
posted @ 2016-09-20 09:56 桃源仙居 阅读(76) 评论(0) 推荐(0)
摘要:import java.util.*; public class Quick{ public static void main(String[] args){ int[] array = {4, 5, 0, 3, 1, 2, 6, 7, 8, 9 }; sort(array, 0, array.length-1); System.out.println("快速排... 阅读全文
posted @ 2016-07-03 15:36 桃源仙居 阅读(136) 评论(0) 推荐(0)
摘要:package algorithm; import java.util.Arrays; /** * 冒泡排序:时间复杂度为(1+2+3+4+...+(n-1))~O(n2) * 思想:相邻的数不断进行比较交换,使得最小的数不断的浮出水面 * @author cloud * @data 2016年7月18日 * @version 1.0 * @description */ pub... 阅读全文
posted @ 2016-07-03 15:21 桃源仙居 阅读(84) 评论(0) 推荐(0)
摘要:import java.util.*; public class Merge{ /** * 归并排序 * 简介:将两个(或两个以上)有序表合并成一个新的有序表即把待排序序列分为若干个子序列,每个子序列是有序的。然后再把有序子序列合并为整体有序序列 * 时间复杂度为O(nlogn) * 稳定排序方式 * @param n... 阅读全文
posted @ 2016-06-30 09:39 桃源仙居 阅读(93) 评论(0) 推荐(0)
摘要:package algorithm; import java.util.*; /** * 希尔排序:本质上是分组的插入排序 * 1.首先分组,利用插入排序将组内的元素进行排序好 * 2.分组粒度不断缩小,每组的元素个数不断增加,还是利用插入排序将组内的元素进行排序 * 3.直到分组粒度为1的时候,此时变成了插入排序,只有一组,包含所有的元素 4.当粒度编程1的时候,之前的分组排序做... 阅读全文
posted @ 2016-06-29 21:15 桃源仙居 阅读(101) 评论(0) 推荐(0)
摘要:package algorithm; import java.util.Arrays; /** * 插入排序:时间复杂度为(2+3+4+...+n)~O(n2) * 思想:假定前边的已经是有序的,将当前的数值插入到合适的位置,注意大的数往后边移动 * * @author cloud * @data 2016年7月18日 * @version 1.0 * @descripti... 阅读全文
posted @ 2016-06-29 20:01 桃源仙居 阅读(97) 评论(0) 推荐(0)
摘要:package algorithm; import java.util.Arrays; /** * 简单选择排序:时间复杂度为(1+2+3+4+...+(n-1))~O(n2) * 思想:每次从后边的序列中找到最小的数,并且记录下位置,最后将还要小的数放在前面 * @author cloud * @data 2016年7月18日 * @version 1.0 * @descrip... 阅读全文
posted @ 2016-06-29 20:00 桃源仙居 阅读(76) 评论(0) 推荐(0)