直接选择排序:
基本思想:每一趟从待排序的数据元素中选出最小(或最大)的一个元素,顺序放在已排好序的数列的后面(前面),直到全部待排序的数据元素排完。 选择排序是不稳定的排序方法。
实现思想:
1、 针对n个数R[1…n]进行n-1趟选择就可排好序。
2、 无序序列R[1…n],有序列为空。
3、 第一趟选择,选出最小的数p[k],用p[k]和R[1]进行交换,得到无序序列R[2…n],有序列R[1].
4、 第二趟选择,从R[2…n]选出最小的数p[k],用p[k]和R[2]进行交换,得到无序序列R[3…n],有序列R[1…2].
重复上面过程,知道n-1趟。就排好序了。
例子:
初始关键字 [49 38 65 97 76 13 27 49]
第一趟排序后 13 [38 65 97 76 49 27 49]
第二趟排序后 13 27 [65 97 76 49 38 49]
第三趟排序后 13 27 38 [97 76 49 65 49]
第四趟排序后 13 27 38 49 [76 97 65 49 ]
第五趟排序后 13 27 38 49 49 [97 65 76]
第六趟排序后 13 27 38 49 49 65 [97 76]
第七趟排序后 13 27 38 49 49 65 76 [97]
最后排序结果 13 27 38 49 49 65 76 97
代码实现:
private void selectSort(int[] p) {
int tmp=0;
int tmpIndex=0;
for(int i=1;i<p.length;i++){
for(int j=i;j<p.length;j++){
if(p[tmpIndex]<p[j]){
tmpIndex=j;
}
}
tmp=p[tmpIndex];
p[tmpIndex]=p[i];
p[i]=tmp;
}
}
分享到:
相关推荐
计算机程序设计艺术-第3卷-排序与查找(第2版)-中文版.pdf
《计算机程序设计艺术》-第1卷-基本算法(第3版)-中文版 《计算机程序设计艺术》-第2卷-半数值算法(第3版)-中文版 《计算机程序设计艺术》-第3卷-排序与查找(第2版)-中文版
计算机程序设计艺术-第3卷-排序与查找(第2版)-part-2-中文版.pdf
计算机程序设计艺术-第3卷-排序与查找(第2版)-part-1-中文版.pdf
三卷中文名为《基本算法》 《半数值算法》及《排序与查找》 本书内容博大精深 作者因为三卷书获得美国计算机协会1974年图灵奖(该奖被国际公认为计算机科学领域的最高奖项) ">《计算机程序设计艺术》重译自Donald E...
三卷中文名为《基本算法》 《半数值算法》及《排序与查找》 本书内容博大精深 作者因为三卷书获得美国计算机协会1974年图灵奖(该奖被国际公认为计算机科学领域的最高奖项) ">《计算机程序设计艺术》重译自Donald E...
计算机程序设计艺术+第3卷:排序与查找(第二版)高清中文版
共四部分: 计算机程序设计艺术(第一卷)基本算法.rar 计算机程序设计艺术(第二卷)半数值算法.rar ...计算机程序设计艺术(第三卷)排序与查找.rar 计算机程序设计艺术(补充卷)英文版.rar
《计算机程序设计艺术》-第1卷-基本算法(第3版)-中文版 《计算机程序设计艺术》-第2卷-半数值算法(第3版)-中文版 《计算机程序设计艺术》-第3卷-排序与查找(第2版)-中文版
美国DONALD写的,是计算机非常有名的专家,计算机程序设计艺术系列广受比尔盖茨等专家的好评,是计算机不得不读的好书。
《计算机程序设计艺术》重译自Donald E. Knuth(汉名高德纳)的三卷著作:"The Art of Computer Programming: 1. Fundamental Algorithms; 2. Seminumerical Algorithms; 3. Sorting and Searching";三卷中文名为...
共四部分: 计算机程序设计艺术(第一卷)基本算法.rar 计算机程序设计艺术(第二卷)半数值算法.rar 计算机程序设计艺术(第三卷)排序与查找.rar 计算机程序设计艺术(补充卷)英文版.rar
计算机程序设计艺术 全三卷 高清 计算机程序设计艺术(第一卷) 基本算法 第3版.pdf 计算机程序设计艺术(第二卷) 半数值算法 第3版.pdf 计算机程序设计艺术(第三卷)排序与查找 第2版.pdf
《计算机程序设计艺术》1,2,3卷--中文PDF电子书 英文书名《The Art Of Computer Programming》 第3版 Addison Wesley 国防工业出版社 Donald E.Knuth著 苏运霖译 第一卷 基本算法 。。。第1章 基本...
filename=计算机程序设计艺术(第二版,中文版,第三卷:排序和查找,Donald E. Knuth 著).pdf size=17775679 crc32=7B18B9F4 ===== 本PDF共3个文件 计算机程序设计艺术(第二版,中文版,第三卷:...
计算机程序设计艺术(中文版)第一卷第三版:基本算法$$.pdf 计算机程序设计艺术(中文版)第二卷第三版:半数值算法$!...计算机程序设计艺术(中文版)第三卷第二版:排序与查找!!.pdf 计算机程序设计艺术 第四卷.pdf
《计算机程序设计艺术》1,2,3卷--中文PDF电子书 英文书名《The Art Of Computer Programming》 第3版 Addison Wesley 国防工业出版社 Donald E.Knuth著 苏运霖译 第一卷 基本算法 。。。第1章 基本...
计算机程序设计艺术第一卷,排序与查找。 DONALD E.KNUTH著,苏运霖译
7卷本《计算机程序设计艺术》的第1卷以基本的程序设计概念和技术开始,然后专注于信息结构——计算机内部信息的表示、数据元素之间的结构关系以及如何有效地处理它们,给出了对于模拟、数值方法、符号计算、软件和...
计算机程序设计艺术(第三版) 1-3卷. 第1卷-基本算法;第2卷-半数值算法;第3卷-排序与查找