简单选择排序的基本思想:(从小到大) 第1趟,在待排序记录r[1]~r[n]中选出最小的记录,将它与r[1]交换; 第2趟,在待排序记录r[2]~r[n]中选出最小的记录,将它与r[2]交换; 以此类推,第i趟在待排序记录r[i]~r[n]中选出最小的记录,将它与r[i]交换,使有序序列不断增长直到 ...
分类:
移动开发 时间:
2018-01-13 12:58:00
阅读次数:
160
class SortAlgorithm { static void Main(string[] args) { int[] arr1 = { 1, 4, 2, 7, 9, 8, 3, 6 }; //ShellSort(arr1); //DirectInsertSort(arr1); //Bubble ...
分类:
编程语言 时间:
2018-01-07 15:56:06
阅读次数:
203
初学排序算法,我觉得只需要掌握算法的精髓,没必要把所有算法都实现一遍,下面我会实现一些经典的排序算法。(均采用C++实现) 学习的排序算法包含: 1》插入排序(直接插入排序、希尔排序) 2》选择排序(简单选择排序、堆排序) 3》交换排序(快速排序、冒泡排序) 4》归并排序 5》基数排序 我认为初学者 ...
分类:
编程语言 时间:
2018-01-06 15:51:48
阅读次数:
172
1.目的 这几天看别人的算法博客,发现有些人的代码存在错误。并且在搜索引擎上排名非常高,误导了很多人,所以自己写了这篇博客。 2.算法描述 二元选择排序是对简单选择排序的一种改进。简单选择排序就是从数据中选择出最小的值与第一个位置的数据交换,然后在剩下的数据中选择最小的值与第二个位置的数据交换以此类 ...
分类:
编程语言 时间:
2017-12-28 23:15:53
阅读次数:
188
选择排序可以分为:简单选择排序和堆排序(已知位置,找元素)1.简单选择排序原理:就是直接从待排序数组里选择一个最小(最大)的数字,顺序放入数组里,直到数组排好序代码实现:for(int i=0;i 0; i--){ heapAdjust(arr, i, a.length); } //排序 for(i... ...
分类:
编程语言 时间:
2017-12-14 19:23:14
阅读次数:
117
实验八 排序算法的实现 一、 实验目的: 1. 熟练掌握常用的直接插入排序、简单选择排序、冒泡排序等算法。 2. 深入理解各种查找排序的结构特点及各算法之间的区别。 二、 实验内容: 1. 采用直接插入排序、简单选择排序、冒泡排序等常用的排序算法实现给数据的排序。 2. 各种排序算法的结构特点及各算 ...
分类:
编程语言 时间:
2017-12-04 21:27:52
阅读次数:
182
1.排序的分类 排序算法分为: 内部排序,内部排序是数据记录在内存中进行排序 外部排序,外部排序是因为排序的数据很大,内存一次不能容纳全部的排序记录,在排序过程中需要访问外存。 内部排序又可分为: 比较排序,时间复杂度O(nlogn) ~ O(n^2),主要有:冒泡排序,选择排序,插入排序,归并排序 ...
分类:
编程语言 时间:
2017-11-14 19:31:04
阅读次数:
177
package com.wang.sort; import java.util.Arrays; public class Sort { /** * 1.直接插入排序 * 思想:当前数与前面已经排好顺序的数进行比较,插入到合适的位置 * @param arra */ public void simpl... ...
分类:
编程语言 时间:
2017-11-11 14:09:09
阅读次数:
238