java几种基本的排序方法,快速排序,冒泡排序,选择排序,插入排序
来源:互联网 发布:淘宝脱毛仪器有效果吗 编辑:程序博客网 时间:2024/05/16 14:25
1、快速排序
package com.entity;
import java.util.Arrays;
public class Test {
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] arr={5,2,6,7,1};
Arrays.sort(arr);
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}
}
}
快速排序法,它只能按从小到大排序。
2、冒泡排序
它的原理,依次比较相邻的两个数,按从小到大来排序,将小数放在前面,大数放在后面。即在第一遍:首先比较第1个和第2个数,将小数放前,大数放后。然后比较第2个数和第3个数,将小数放前,大数放后,如此继续,直至比较最后两个数,将小数放前,大数放后。
package com.entity;
import java.util.Arrays;
public class Test {
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] arr={5,2,6,7,1};
for (int i = 0; i < arr.length-1; i++) {
for (int j =0; j < arr.length-1-i; j++) {//这个j-1-i要注意
if(arr[j]<arr[j+1]){//这个小于的话是从大到小排序,如果是大于是从小到大排序
int a=arr[j]; //这里相当于找了个替身
arr[j]=arr[j+1];
arr[j+1]=a;
}
}
}
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}
}
}
结果
3、选择排序
选择排序法是将数组的第一个数据作为最大或者最小的值,然后通过比较循环,输出有序的数组。
package com.entity;
import java.util.Arrays;
public class Test {
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] arr={5,2,6,7,1};
//从小到大
for (int i = 0; i < arr.length-1; i++) {
int max=i; //如果max是等于i的话且下面arr[max]是>arr[j]的,则是从小到大排序
for (int j = i+1; j < arr.length; j++) {
if(arr[max]>arr[j]){
max=j;
}
if(max!=i){
int a=arr[i];
arr[i]=arr[max];
arr[max]=a;
}
}
}
//从大到小
//for (int i = 0; i < arr.length-1; i++) {
// int max=0;
// for (int j = i+1; j < arr.length; j++) {
// if(arr[max]<arr[j]){
// max=j;
// }
// if(max!=i){
// int a=arr[i];
// arr[i]=arr[max];
// arr[max]=a;
// }
// }
// }
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}
}
}
4、插入排序
插入排序是选择一个数组中的数据,通过不断的插入比较最后进行排序。
从小到大
package com.entity;
import java.util.Arrays;
public class Test {
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] arr={5,2,6,7,1};
for(int i=1;i<arr.length;i++){
for(int j=i;j>0;j--){
if (arr[j]<arr[j-1]){
int temp=arr[j-1];
arr[j-1]=arr[j];
arr[j]=temp;
}else break;
}
}
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}
}
}
从大到小
把 if (arr[j]<arr[j-1])这个判断改成>符号就是从大到小排序
这些排序都是最基本的。比较简单。
- java几种基本的排序方法,快速排序,冒泡排序,选择排序,插入排序
- 几种基本排序的实现:选择排序,冒泡排序,插入排序,堆排序,快速排序,归并排序
- 四种基本的排序方法:冒泡排序,选择排序,插入排序,快速排序
- java常用的几种排序(冒泡排序 选择 插入排序 /快速排序)
- Java 排序 快速排序 冒泡排序 选择排序 插入排序
- 几种常用的排序算法的分析及java实现(希尔排序,堆排序,归并排序,快速排序,选择排序,插入排序,冒泡排序)
- 几种基本的排序算法:选择排序、插入排序、冒泡排序
- PHP实现几种基本排序算法--冒泡排序法,快速排序法,选择排序法,插入排序法
- 基本的排序算法:冒泡排序、插入排序、希尔排序、选择排序、归并排序、快速排序、堆排序
- java实现冒泡排序,插入排序,选择排序,快速排序
- Java基本排序实现--插入排序,选择排序,冒泡排序
- Java基本排序(插入排序,冒泡排序,选择排序)
- 几种排序算法(冒泡排序算法,选择排序算法,快速排序算法,插入排序)
- java 几种简单的排序(插入排序,冒泡排序,选择排序)
- 三种最基本的排序 选择排序 插入排序 冒泡排序
- 冒泡排序、选择排序、插入排序、希尔排序、归并排序、快速排序、堆排序java实现
- C语言常用的几种排序算法代码(选择排序,冒泡排序,插入排序,快速排序)
- java写的排序(冒泡排序,插入排序,选择排序,快速排序)
- JAVASE第6天笔记
- JAVASE第7天笔记
- 将.csv格式转换成.txt
- Primary Master Configuration ( /etc/salt/master )
- JAVASE第8天笔记
- java几种基本的排序方法,快速排序,冒泡排序,选择排序,插入排序
- JAVASE第9天笔记
- iOS利用(Shell脚本)自动打包项目工程生成ipa
- 收录的一些教程网站
- 大神教你safari删插件技巧!
- JAVASE第10天笔记
- Day4 自定义控件/ListView/RecyclerView
- Minion Primary Configuration(/etc/salt/minion)
- JAVASE第11天笔记