Loading

上一页 1 ··· 28 29 30 31 32 33 34 35 36 ··· 38 下一页
摘要: 概述 可以参看之前的文章: 排序算法之计数排序 桶排序就不上代码了, 计数排序和基数排序都是桶排序,基数排序我没有写,其实和基数排序的思想一脉相承,有兴趣的可以看看,写计数排序主要为了帮助理解桶排序的思想。 简单说, 在排序时, 根据数据的范围准备不同的N个桶, 遍历整个序列, 将数据放到不同的各自 阅读全文
posted @ 2019-01-02 22:55 烟草的香味 阅读(376) 评论(0) 推荐(0) 编辑
摘要: 概述 简单的来说, 归并就是将两个有序数列合并成一个有序数列. 归并排序就是利用归并的思想, 对待排序数组分成若干个长度为1的子数列, 然后将长度为1的数列进行两两合并, 得到若干个长度为2的有序数列, 在两两合并,得到长度为4的数列, 以此类推, 知道合并为1以数列, 结果就是排序好的数组. 其步 阅读全文
posted @ 2019-01-02 22:42 烟草的香味 阅读(176) 评论(0) 推荐(0) 编辑
摘要: 概述 简单来说, 计数排序就是申请一个相同数据范围的数组空间, 计算每个数字各有几个,如此即可. 如一个数组为: [5, 2, 3, 4, 6, 3, 1, 0] 申请一个长度为6的数组(因为数组范围为0-5), 其中的值为: [1, 1, 1, 2, 1, 1, 1] 其数组意思就是, 0有1个, 阅读全文
posted @ 2019-01-02 22:29 烟草的香味 阅读(210) 评论(0) 推荐(0) 编辑
摘要: 概述 介绍堆排序之前, 要先介绍什么是堆以及最大堆最小堆 什么是堆 这里的堆指的不是堆栈中的堆, 而是一种数据结构. 堆可以视为一棵完全的二叉树,完全二叉树的一个"优秀"的性质是,除了最底层之外,每一层都是满的,这使得堆可以利用数组来表示,每一个结点对应数组中的一个元素, 如下所示: 最大堆 最大堆 阅读全文
posted @ 2019-01-02 22:19 烟草的香味 阅读(194) 评论(0) 推荐(0) 编辑
摘要: 概述 希尔排序是插入排序的一种更高效的改进版本. 希尔排序的基本思想是: 希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰被分成一组,算法便终止 就是将插入排序分组一下 分组排序步骤如下: 选定一个增量, 即 阅读全文
posted @ 2019-01-02 22:07 烟草的香味 阅读(225) 评论(0) 推荐(0) 编辑
摘要: 概述 冒泡排序是一种简单的排序算法. 它重复的走过要排序的数列, 每次比较相邻的两个元素, 若它们的顺序错误就把他们进行交换, 如此循环进行, 直到冒泡到最后一个元素或本次比较不需要进行冒泡 就结束. 因为元素就像一个一个向上冒, 故而叫做冒泡算法, 个人理解. 冒泡排序的执行步骤如下(从小到大): 阅读全文
posted @ 2019-01-02 21:36 烟草的香味 阅读(169) 评论(0) 推荐(0) 编辑
摘要: 概述 快速排序算法是基于交换的高效排序算法, 采用了分治的思想. 其基本思想如下: 从数列中取出一个数作为基准数 将数组进行划分, 将比基准数大的元素移至右侧, 比基准数小的元素移至左侧 对左右的子区间重复进行排序, 直至每个子区间只有一个元素 其时间空间复杂度如下: 快速排序就是将小的放左边, 大 阅读全文
posted @ 2019-01-02 21:20 烟草的香味 阅读(225) 评论(0) 推荐(0) 编辑
摘要: 概述 LinkedLIst和ArrayLIst一样, 都实现了List接口, 但其内部的数据结构不同, LinkedList是基于链表实现的(从名字也能看出来), 随机访问效率要比ArrayList差. 它的插入和删除操作比ArrayList更加高效, 但还是要遍历部分链表的指针才能移动到下标所指的 阅读全文
posted @ 2019-01-02 21:09 烟草的香味 阅读(300) 评论(0) 推荐(0) 编辑
摘要: 概述 插入排序是一种简单直观的排序算法. 插入排序的工作原理就是, 对于未排序数据, 在一排序序列中从后向前扫描, 找到对应的位置并插入. 插入排序算法描述如下: 从第一个元素开始, 该元素可以认为已经被排序 取出下一个元素, 在已经排序的元素序列中从后向前扫描 若序列中的元素大于取出的元素, 则向 阅读全文
posted @ 2019-01-02 21:09 烟草的香味 阅读(226) 评论(0) 推荐(0) 编辑
摘要: 概述 选择排序是一种简单直观的排序算法. 它的工作原理是每一次从待排序的数据元素中选出最小(或最大)的一个元素, 存放在序列的起始位置,直到全部待排序的数据元素排完. 选择排序是不稳定的排序方法. 选择排序是从序列中选出最大或最小数, 将其放到最前面, 然后继续选择, 故而叫做选择排序, 个人理解. 阅读全文
posted @ 2019-01-02 20:52 烟草的香味 阅读(252) 评论(0) 推荐(0) 编辑
上一页 1 ··· 28 29 30 31 32 33 34 35 36 ··· 38 下一页