algorithm
文章平均质量分 67
Zxl809983602
这个作者很懒,什么都没留下…
展开
-
排序算法系列第三篇
7、简单选择排序 public class SortAlgorithm { //简单选择排序 /* * 步骤: * 一、从arr[0]到arr[arr.length-1]中选择最小的,与arr[0]交换位置 * 二、从arr[1]到arr[arr.length-1]中选择最小的,与arr[1]交换位置 * 三、从arr[2]到arr[arr.length-1原创 2012-12-08 10:14:07 · 391 阅读 · 0 评论 -
排序算法系列第二篇
5、插入排序 直接插入排序是一种自简单的排序算法,它的基本能操作是讲一个记录插入到已排序好的有序表中,从而得到一个新的、记录数增1的有序表。 java代码如下: public class SortAlgorithm { //插入排序 public static void InsertSort(int[] arr){ int i,j,temp; for(i=1原创 2012-12-07 13:06:53 · 486 阅读 · 0 评论 -
排序算法系列第四篇
7、堆排序 堆排序与简单选择排序的区别: 简单选择排序第一次进行n-1次的比较得到最小值,然后在剩余的n-1个记录中进行n-2次比较得出次小值。事实上,可以利用前n-1次比较的信息,来减少比较的次数,从而提高效率,堆排序采用树形结构保留了比较结果,从而减少了比较次数。 堆排序的基本思想: 1)先将数组data[0,1,...,n-1]建成一个大顶堆(或者小顶堆),即原始无序区; 2)原创 2012-12-12 11:23:35 · 418 阅读 · 0 评论 -
排序算法系列第一篇
写程序时,经常会需要对数组进行排序。为了节省上网查找的时间,笔者花费了一些时间,专门对一些排序算法做了分析,并在本文中给出了总结,一方面方便自己日后使用,同时也方便大家用的时候能够在这里就找到合适自己的方法。 一、鸽巢排序 算法步骤: 1) 给定一个待排序数组,创建一个备用数组(鸽巢),并初始化元素为0,备用数组的索引即是待排序数组的值。 2)把待排序数组的值放入“鸽巢”里,即备用数组的索原创 2012-12-06 11:18:27 · 586 阅读 · 0 评论