- 博客(5)
- 收藏
- 关注
原创 排序算法之基数排序
基数排序(redix sort)又称桶子法,是一个稳定的排序算法。就像有0到910个桶子,根据个位、十位、百位...数字来存放这些数据,近而进行排序。假设有这么一组数据a{15, 7, 26, 43, 13, 72, 10, 31, 17}需要排序。思路如下:①首先按照个数数大小来放在桶子里。0:101:312:723:43, 134:5:156:267:7
2016-11-10 10:22:13
233
原创 排序算法之归并排序
归并排序也是使用了分治法的一种排序算法。首先先来看如何将两个有序数组合并起来。假设有两个有序数组a[1,4,7],b[2,5,6],数组c的长度为6用来放合并完后的数据。现在要将它们合并,首先比较a[0]与b[0]的大小,a[0]b[0]则c[1] = b[0],接下来比较a[1]与b[1]的大小然后用c来存放。以此类推。java代码实现为: /** * @param a 数组
2016-11-08 17:29:15
201
原创 排序算法之交换排序
一.冒泡排序冒泡排序应该是在排序算法里面最早接触到的一种排序算法了。冒泡排序的主要思路是遍历数组然后data[0]与data[1]比较,如果data[0]大于data[1]则交换值,然后data[1]在于data[2]比较大于则继续交换值,一次类推直到最后一个值是最大值,然后在遍历data[0]到data[data.length - 2],继续比较。java代码如下: public s
2016-11-03 11:04:49
267
原创 排序算法之选择排序
一.直接选择排序直接选择排序的只要思想是遍历数组,将数中的最大值和数组最后一位交换,然后出了最后一位的剩余数组遍历选出最大的放在数组剩余数组的最后一位。以此类推。变可以得到排序之后的数组,用图表示如下是:1:[2, 5, 1, 4, 3, 6, 7]------原始数据2:[2, 5, 1, 4, 3, 6,7]3:[2, 5, 1, 4, 3,6, 7]4:[2,
2016-10-31 15:42:29
208
原创 排序算法之插入排序
最近工作轻松了点,抽空看了一下排序算法,写下来一点自己的一些体会看法。如果哪天忘了也方便捡回来,网上有蛮多瞎转的,记录下来,以免被误导理解错了。一.直接插入排序直接插入排序的思想是在一组待排序的数组R[0.1...n]中,分为两部分,第一部分为已排序的,另一部分为待排序的。第一部分初始数据只有R[0](只有一个数据当然是有序的啦),第二部分是R[1...n]。接下来在第二部分按顺序去数据插
2016-10-26 14:37:09
225
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人