java中几种排序
来源:互联网 发布:京东用哪个软件返利 编辑:程序博客网 时间:2024/06/05 04:00
Java中的几种排序方法:冒泡排序,选择排序,插入排序和快速排序
1.冒泡。所谓冒泡就是把一个数组中相邻两个数进行循环比较。(个人理解)
如:
//冒泡法
public static int[] maopao(int [] a){
for(int i=0;i<a.length-1;i++){
for(int j=0;j<a.length-1-i;j++){
if(a[j]<a[j+1]){
int temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
}
}
}
return a;
}
//测试
public static void main(String[] args) {
int []b={9,5,8,2,7,3,6,4,1};
int []arr1=maopao(b);
for(int i=0;i<arr1.length;i++){
System.out.print(arr1[i]);
}
}
1.选择排序。选择排序是把数组中最小的那个数的坐标和第一个数进行交换。(个人理解)
//选择排序(1)——得到数组中最小数的坐标
public static int selectMin(int[] arr,int index){
int min=arr[index];
int mIndex=index;
for(int i=index+1;i<arr.length;i++){
if(arr[i]<min){
min=arr[i];
mIndex=i;
}
}
return mIndex;
}
//选择排序(2)——两个数进行交换
public static void swap(int[] arr,int x,int y){
int temp=arr[x];
arr[x]=arr[y];
arr[y]=temp;
}
//测试
public static void main(String[] args) {
int[] arr={9,5,8,2,7,3,6,4,1};
//排序
for(int i=0;i<arr.length-1;i++){
int index=selectMin(arr,i);
swap(arr,i,index);
}
System.out.println();
for(int i=0;i<arr.length;i++){
System.out.print(arr[i]);
}
}
1.然后是插入排序。及新建一个数组,将需要排序的数组的第一个元素先放到新数组中去,然后把剩下的元素有序的、依次插入到新数组中去
方法:
public static void main(String[] args) {
int[] arr1={3,2,1,5,4,8,6,9,7};
int[] arr2=new int[arr1.length];
arr2[0]=arr1[0];
for(int i=0;i<arr1.length;i++){
System.out.print(arr1[i]);
}
for(int i=1;i<arr1.length;i++){
int j=i;
arr2[i]=arr1[i];
if(arr2[i]<arr2[i-1]){
while(i>0){
if(arr2[i]<arr2[i-1]){
int temp=arr2[i];
arr2[i]=arr2[i-1];
arr2[i-1]=temp;
i--;
}else break;
}
}
i=j;
}
for(int i=0;i<arr2.length;i++){
System.out.print(arr2[i]);
}
}
- java中几种排序
- java中几种排序算法
- java中几种简单排序
- 【Java】Java中几种排序算法
- java排序----鸡尾酒排序
- java排序--归并排序
- java排序-希尔排序
- Java 排序 - 冒泡排序
- Java排序 Collections排序
- Java排序--插入排序
- 排序-选择排序-Java
- 排序-插入排序-Java
- 排序-归并排序-Java
- 排序-快速排序-Java
- java排序 -- 堆排序
- 黑马程序员----Java中几种常用排序算法(选择排序、冒泡排序、快速排序)
- JAVA排序
- JAVA排序
- 函数指针FunPtr
- 产品经理(尤其是创业的)需要懂技术吗?懂到什么程度?
- 这问题在哪里呀,老师求解呀
- 金钱买不到什么:金钱与公正的正面交锋
- java String详解
- java中几种排序
- 线程20121108
- 人生与市场竞争中最强有力的武器
- 百钱买鸡
- 定时触发器
- printf 中有符号和无符号
- Hosts文件
- webRTC源码获取
- study1