2016年3月16日

摘要: 快速排序: 将待排的序列一分为二,将待排序的第一个值作为基准,比这个值小的放在基准值的前面,比这个值大的放在基准值的后面,然后再将小的部分和大的部分进行一份为二,直到全部分完就已排好序 代码如下: 注意: 1.运用了递归的思想 2.划分的时候应该注意有两个标志值i,j ,i为当前所要分割数组的第一个 阅读全文
posted @ 2016-03-16 13:40 JuneXiang 阅读(159) 评论(0) 推荐(0)
 
摘要: 选择排序: 在待排的序列中找到最大的数字,将此数字放在已排序列的最后,直到全排完 代码如下: 注意: 与冒泡排序的区别是冒泡是邻近的两两比较,进行互换位置,而选择排序是每次得到一个最大的与此次序列的第一个进行互换位置 结果如下: 阅读全文
posted @ 2016-03-16 12:53 JuneXiang 阅读(169) 评论(0) 推荐(0)
 
摘要: 插入排序: 类似于玩扑克牌抓牌的动作 从一个待排序的数组中拿出一个数字插入到一个已排好序的数组中,使得已排好序的数组仍是个有序的数组 代码如下: 注意: 1.从第二个数字开始 2.待排序的数字是个哨兵元素,用哨兵元素与排好序的元素从后往前进行对比,数字比哨兵元素大则该数字后移,直到找到第一个比哨兵元 阅读全文
posted @ 2016-03-16 12:44 JuneXiang 阅读(334) 评论(0) 推荐(0)
 
摘要: 冒泡排序: 将邻近的数字两两进行比较,按照从大(小)到小(大)的顺序进行交换, 每一趟下来就会有使得最大或者最小的数字冒到本趟循环的最后一个数字。 代码如下: 运行结果如下: <!--StartFragment --> 阅读全文
posted @ 2016-03-16 12:26 JuneXiang 阅读(195) 评论(0) 推荐(0)