摘要: 归并排序 1、算法思想 归并排序包括两个步骤,分别为: 第一,分解:分解待排序的n个元素的序列成各具n/2个元素的子序列; 第二,合并:合并两个已排序的子序列——这是核心部分! 递归版原理如下(假设序列共有n个元素): 2、伪代码 我是栗子,栗子,栗子 1 2 38 5 7 6 4 10 Merge 阅读全文
posted @ 2016-10-04 21:15 米琪儿 阅读(3057) 评论(0) 推荐(0) 编辑
摘要: 直接选择排序 1、算法思想 2、伪代码 3、实现 阅读全文
posted @ 2016-10-04 17:59 米琪儿 阅读(386) 评论(0) 推荐(0) 编辑
摘要: 希尔排序 1、算法思想 我是栗子,栗子,栗子 假设有这样一组数[ 13 14 94 33 82 25 59 94 65 23 45 27 73 25 39 10 ],如果我们以步长为5开始进行排序,我们可以通过将这列表放在有5列的表中来更好地描述算法,这样他们就应该看起来是这样: 然后我们对每列进行 阅读全文
posted @ 2016-10-04 17:25 米琪儿 阅读(312) 评论(0) 推荐(0) 编辑
摘要: 插入排序 工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。 插入排序在实现上,通常采用in-place排序(即只需用到O(1)的额外空间的排序),因而在从后向前扫描过程中,需要反复把已排序元素逐步向后挪位,为最新元素提供插入空间。 https://zh.w 阅读全文
posted @ 2016-10-04 15:46 米琪儿 阅读(491) 评论(0) 推荐(0) 编辑
摘要: 快速排序 https://zh.wikipedia.org/wiki/%E5%BF%AB%E9%80%9F%E6%8E%92%E5%BA%8F 1、算法思想 递归的最底部情形,是数列的大小是零或一,也就是永远都已经被排序好了。虽然一直递归下去,但是这个算法总会结束,因为在每次的迭代(iteratio 阅读全文
posted @ 2016-10-04 12:09 米琪儿 阅读(1047) 评论(0) 推荐(0) 编辑