排序算法
来源:互联网 发布:mysql级联删除sql语句 编辑:程序博客网 时间:2024/04/27 20:40
Bubble Sort(冒泡排序)
冒泡排序算法的运作如下:(从后往前)
- 比较相邻的元素。如果第一个比第二个大,就交换他们两个。
- 对每一个相邻元素做同样的工作,从开始第一对到结尾的最后一对。在这一点,最户的元素应该会是最大的数。
- 针对所有的元素重复以上的步骤,除了最后一个。
- 持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。
JAVA
public class BubbleSort{ public void sort(int[] a){ int temp = 0; for(int i = a.length-1;i>0;--i){ for(int j = 0; j<i;++j){ if(a[j+1]<a[j]){ temp = a[j]; a[j] = a[j+1]; a[j+1] = temp; } } } }}
**Selection sort(选择排序)
每一趟从待排序的数据元素中选出最小(或最大)的一个元素,顺序放在以排好虚的数列的后面,直到全部待排序元素排完。
JAVA
public static void SelectSort(int[] a){ int minIndex = 0; int temp = 0; if((a==null)||(a.length==0))*长度为0的数组int[] arr = new int [0],也称之为空数组,虽然arr长度为0,但是依然是一个对象。null数组,int[] arr = null;arr是一个数组类型的空引用。* return; for(int i = 0;i<a.length-1;i++){ minIndex = i;//无序区的最小数据数组下标 for(int = j = i+1;j<a.length;j++){ //在无序区中找到最小数据并保存其数组下标 if(a[j]<a[minIndex]){ minIndex = j; } } if(minIndex != i){ //如果不是无序区的最小值位置不是默认的第一个数据,则交换之 temp = a [i]; a[i] = a[minIndex]; a[minIndex] = temp; } }}
0 0
- 排序算法
- 排序算法
- 排序算法
- 排序算法
- 排序算法
- 排序算法
- 排序算法
- 排序算法
- 排序算法
- 排序算法
- 排序算法
- 排序算法
- 排序算法
- 排序算法
- 排序算法
- 排序算法
- 排序算法
- 排序算法
- Spring MVC的Controller统一异常处理:HandlerExceptionResolver
- Noip 2000 乘积最大
- MFC向导对话框按钮宏定义
- 类集(二)
- 08、异步任务AsyncTask及JSON解析
- 排序算法
- DML,DDL,DCL,DQL的区别
- ListView点击或选中item改变背景
- 剑指offer-算法题练习:part1 二维数组中的查找(数组)
- 百度地图地位
- Exception in thread ""http-bio-80"exec-1" java.lang.OutOfMemoryError: PermGen s解决方案
- Hibernate的Restrictions用法
- 面向对象程序设计上机练习十二(运算符重载)
- intellij IDEA debug启动特别慢