基本排序算法
来源:互联网 发布:称重软件软件开发 编辑:程序博客网 时间:2024/05/12 12:14
- 冒泡排序
该算法运行起来非常慢,但在概念上它是排序算法中最简单的,因此冒泡排序算法在刚开始研究排序技术时是一个非常好的算法。
int[] array = {3,5,8,11,99,33,77,66,100,1,32,29}; int temp; //冒泡排序:由于比较的是相邻元素,所以最后一个元素可看作无相邻元素 for (int i = 0, len = array.length; i < len - 1; i++) { for (int j = i + 1; j < len; j++) { if (array[i] > array[j]) { temp = array[j]; array[j] = array[i]; array[i] = temp; } } }
2. 选择排序
通过保存下标值,每次查找最小元素放到最左边
int[] array = {3,5,8,11,99,33,77,66,100,1,32,29}; int temp; //选择排序,每次都查找最小值 for(int i = 0,len = array.length;i<len-1;i++){ int min = i; for(int j = i+1;j<len;j++){ if(array[min]>array[j]){ min = j; } } if(min != i){ temp = array[i]; array[i] = array[min]; array[min] = temp; } }
3. 插入排序
插入排序,是基本排序算法中最好的一种;一般情况下,要比冒泡排序快一倍,选择排序快上一些。
int[] array = {3,5,8,11,99,33,77,66,100,1,32,29}; int temp; //插入排序,外层向右移动,内层向左排序 //外层每向右移动一个元素,就意味增加一个元素到内层进行排列 //由于内层想左,所以必须大于0 for(int i = 1,len = array.length;i<len;i++){ for(int j=i;j>0;j--){ if(array[j]<array[j-1]){ temp = array[j-1]; array[j-1] = array[j]; array[j] = temp; } } }
0 0
- 排序-基本排序算法
- 算法:基本排序算法
- 基本排序算法 - 基本知识点
- 排序算法基本思想
- 常用基本排序算法
- 算法记录 : 基本排序
- 基本排序算法
- 基本排序算法实现
- 基本排序算法
- 基本排序算法思想
- 基本排序算法
- 基本的排序算法
- 排序基本算法
- 基本排序算法
- 基本排序算法
- 基本排序算法总结
- 基本排序算法汇总
- 基本排序算法小结
- swift UINavigationController 导航控制器
- 编程之美之象棋将帅问题
- Bash Shell中变量自增的实现方法
- android 多屏幕适配解决方案
- short_open_tag短标签的打开
- 基本排序算法
- c语言讨论--范型编程
- 6. 面对对象(高级) Part 1 --- 学习笔记
- 写了一个递归查看目录下所有,文件…
- linux 下myls实现
- linux printf()缓冲区的问题
- s 标签 遍历 list 数组
- 兔子繁殖问题
- iOS7中UIKit支持的动力行为之UIAttachmentBehavior