排序算法(一)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了排序算法(一),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1998字,纯文字阅读大概需要3分钟。
内容图文
![排序算法(一)](/upload/InfoBanner/zyjiaocheng/1060/5332ad833dd14e56b48b2c0efde0d6a3.jpg)
1 public class SortTest { 2 public static void main(String[] args) { 3 int[] source = {7,2,3,4,1,-1,6}; 4//bubbleSort(source); 5//selectSort(source); 6 insertSort(source); 7for(int i = 0; i < source.length;i++){ 8 System.out.print(source[i] + " "); 9 } 10 } 11/*12 * 冒泡排序 13 * 我的第一次写法 14*/15publicstaticvoid bubbleSort1(int[] source) { 16for(int i = 0; i < source.length - 1; i++){ 17for(int j = 0; j < source.length - i - 1; j++){ 18if(source[j + 1] < source[j]){ 19int temp = source[j]; 20 source[j] = source[j+1]; 21 source[j+1] = temp; 22 } 23 } 24 } 25 } 26/*27 * 冒泡排序 28 * 好的写法:容易理解 29*/30publicstaticvoid bubbleSort(int[] source) { 31boolean exchange; 32for (int i = source.length -1; i > 0 ; i--) { 33 exchange = false; 34for(int j = 0; j < i; j++){ 35if(source[j + 1] < source[j]){ 36int temp = source[j]; 37 source[j] = source[j+1]; 38 source[j+1] = temp; 39 exchange = true; 40 } 41 } 42if (!exchange) { 43return; 44 } 45 } 46 } 47/*48 * 选择排序:首先在未排序序列中找到最小元素,存放到排列序列的起始位置, 49 * 然后,再从剩余未排序序列中找到最小元素,存放到排列序列的末尾 50*/51publicstaticvoid selectSort(int[] source){ 52for (int i = 0; i < source.length - 1; i++) { 53for(int j = i + 1; j < source.length; j++){ 54if (source[i] > source[j]) { 55int temp = source[i]; 56 source[i] = source[j]; 57 source[j] = temp; 58 } 59 } 60 } 61 } 62/*63 * 插入排序: 64 * 插入排序的基本操作就是将一个数据插入到已经排好序的有序数据中,从而得到一个新的、个数加一的有序数据, 65 * 算法适用于少量数据的排序,时间复杂度为O(n^2)。是稳定的排序方法 66*/67publicstaticvoid insertSort(int[] source){ 68for (int i = 1; i < source.length; i++) { 69for(int j = i; (j > 0) && (source[j] < source[j-1]); j--){ 70int temp = source[j]; 71 source[j] = source[j-1]; 72 source[j - 1] = temp; 73 } 74 } 75 } 76/*77 * Shell排序 78 * 先取一个小于n的整数d1作为第一个增量,把文件的全部记录分成d1个组。所有距离为dl的倍数的记录放在同一个组中。 79 * 先在各组内进行直接插入排序;然后,取第二个增量d2<d1重复上述的分组和排序,直至所取的增量dt=1(dt<dt-l<;…<d2<d1), 80 * 即所有记录放在同一组中进行直接插入排序为止。该方法实质上是一种分组插入方法。非稳定排序方法 81*/82 }
原文:http://www.cnblogs.com/wanghui390/p/3586570.html
内容总结
以上是互联网集市为您收集整理的排序算法(一)全部内容,希望文章能够帮你解决排序算法(一)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。