常见排序选择、冒泡、插入
来源:互联网 发布:淘宝66大促是什么活动 编辑:程序博客网 时间:2024/04/30 11:59
思想:每一趟从待排序的数据元素中选择最小(或最大)的元素,顺序放在已经排好的序列最前(或最后),直到全部待排序的数据元素排序完成。分析如下图:
JAVA代码如下:
public static void selectSort(int[] a) {
for(int i=0;i<a.length-1;i++) {
for(int j=i+1;j<a.length;j++) {
if(a[i] < a[j]) {
int temp = a[i];
a[i] = a[j];
a[j] = temp;
}
}
}
System.out.println(Arrays.toString(a));
}
2、冒泡排序
思想:(1)、比较相邻的元素。如果第一个比第二个大,就交换他们两个。
(2)、对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。
(3)、针对所有的元素重复以上的步骤,除了最后一个。
(4)、持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。
JAVA代码如下:
public static void bubbleSort(int[] a) {
for(int i=0;i<a.length-1;i++) {
for(int j=0;j<a.length-i-1;j++) {
if(a[j] < a[j+1]) {
int temp = a[j];
a[j] = a[j+1];
a[j+1] = temp;
}
}
}
System.out.println(Arrays.toString(a));
}
3、插入排序
思想:每一步都将一个待排数据按其大小插入到已经排序的数据中的适当位置,直到全部插入完毕。
JAVA代码实现:
public static void insertionSort(int[] a) {
for(int i=1;i<a.length;i++) {
int temp = a[i]; //将待插入的元素保存
int j = 0;
for(j=i-1;j>=0;j--) {
if(temp < a[j]) { //待插入元素和已经排序好的元素比较
a[j+1] = a[j]; //将大的元素后移
} else {
break; //说明此时前i个元素已经是有序的,即已找到插入位置
}
}
a[j+1] = temp;
}
System.out.println(Arrays.toString(a));
}
- 常见排序选择、冒泡、插入
- 冒泡选择插入排序
- 冒泡、选择、插入排序
- 选择、插入、冒泡排序
- 冒泡、插入、选择排序
- 选择、插入、冒泡排序
- 冒泡、选择、插入排序
- 选择、冒泡、插入-排序
- 插入 选择 冒泡 排序
- 选择、冒泡、插入排序
- 冒泡、选择、插入排序
- 冒泡,插入,选择排序
- 冒泡,选择,插入排序
- 冒泡、插入、选择排序
- 冒泡,插入,选择排序
- 冒泡,选择,插入排序
- 冒泡,选择,插入排序
- Java三种常见的排序算法:冒泡,选择,插入
- 《实体解析与信息质量》 - 目录
- Objective-C中多态、动态类型和动态绑定
- 数据库(分组函数)
- Mac os下的一些常用命令
- unresolved external symbol __imp__timeGetTime@0
- 常见排序选择、冒泡、插入
- membership(5)----实战篇
- Unity3D在Android设备上返回按钮失效解决办法
- Nginx.conf介绍
- 分享osg+osgEarth环境配置及相关知识
- 水晶报表乱码
- 如何用MFC画椭圆
- C语言获取当前系统时间的几种方式
- 高仿小米launcher(ZAKER)跨屏拖动item(有源码)