1、选择排序 2、冒泡排序 3、插入排序 4、希尔排序 5、归并排序 6、快速排序 ...
分类:
编程语言 时间:
2016-10-04 14:04:11
阅读次数:
183
1、算法思想 在实现选择排序时,第一讲整个记录序列分为有序区和无序区,初始状态有序区为空,无序区包含所有待排序记录;第二对无序区的比较,使关键码最小的记录与无序区的第一个记录进行交换,一直重复到无序区只剩下一个记录 2、算法实现 ...
分类:
编程语言 时间:
2016-10-03 10:36:41
阅读次数:
124
选择排序思想在生活中,老师让5小孩子按个子从高到低排列,首选老师从5个学生中选出最高的,放到第一个位置,在从剩下4个学生中选出次高的,放到第二个位置,按照这样依次排好顺序,这就是选择排序。第一趟从n个数中选出最大的数,放到第一个位置。第二趟从n-1个数选出最大的数..
分类:
编程语言 时间:
2016-10-03 01:00:51
阅读次数:
196
选择排序原理: 1、第一次遍历中,找到最小的数组元素然后用第一个数组元素交换它。 2、第二次遍历中,找到第二小的数组元素然后用第二个数组元素交换它。 3、依次类推。如果包含N个元素,那么将在最多N-1次遍历之后完成排序。 示例: 示例结果显示: <!doctype html><html><head> ...
分类:
编程语言 时间:
2016-09-30 23:54:56
阅读次数:
199
1.冒泡排序循环的最大值从length递减每次循环只能排好最后一个,然后递减到第一个 2.选择排序外循环 j选取当前元素 到length-1内循环 j+1开始 到length 逐个比较出最小值min交换 min 和 a[j] 3.插入排序(和冒泡相反)从下标1开始 往后选择直到最后每个选中的和他前面 ...
分类:
编程语言 时间:
2016-09-30 21:17:01
阅读次数:
222
#include <stdio.h>#include <math.h>#include <stdlib.h>#define MAX_SIZE 101 #define SWAP(x,y,t) ((t) = (x) ,(x) = (y) ,(y) = (t))void sort(int [],int ) ...
分类:
编程语言 时间:
2016-09-28 12:58:00
阅读次数:
151
选择排序的复杂度大约和冒泡差不多,O(n^2)的, 算法思想:min = i; 从剩下的元素中找最小的元素下标赋值给i if(i !=min){swap;} 代码实现: void sortIntegers(vector<int>& A) { int n = A.size(); int i,min,j ...
分类:
编程语言 时间:
2016-09-27 15:12:03
阅读次数:
149
每当面试时避不可少谈论的话题是排序算法,上次面试时被问到写排序算法,然后脑袋一懵不会写,狠狠的被面试官鄙视了一番,问我是不是第一次参加面试,怎么可以连排序算法都不会呢?不过当时确实是第一次去面试,以此恶补排序算法。 一、基本排序算法:基本排序算法有冒泡排序,选择排序,插入排序。 代码如下: 分析:外 ...
分类:
编程语言 时间:
2016-09-25 10:51:07
阅读次数:
144
基本思想: 设待排序数据元素序列中的元素个数为n,最多做n-1趟,i = 1, 2, ..., n-1。在第 i 趟中从后向前,j = n-1, n-2, ..., i,两两比较 V[j-1] 和 V[j] 的关键字。如果发生逆序,则交换 V[j-1]和 V[j]。 小结: 选择排序,插入排序以及冒 ...
分类:
编程语言 时间:
2016-09-24 23:32:12
阅读次数:
162