java

位置:IT落伍者 >> java >> 浏览文章

java排序的几种方法


发布日期:2024年07月20日
 
java排序的几种方法
//冒泡排序法(大的数往后放)

class Bubble

{

//创建排序方法

public void sort(int arr[])

{

int temp=;

//排序

//外层循环决定一共比几次

for(int i=;i<arrlength;i++)

{

//内层循环开始逐个比较

for (int j=;j<arrlengthi;j++)

{

//如果发现前一个数比后一个数大则交换

if(arr[j]>arr[j+])

{

//换位

temp=arr[j];

arr[j]=arr[j+];

arr[j+]=temp;

}

}

}

}

}

//选择排序法(从小到大)

class Select

{

public void sort(int arr[])

{

int temp=;

for(int i=;i<arrlength;i++)

{

//认为arr[i]最小

int min=arr[i];

//记录最小的数的下标

int minIndex=i;

//用我认为的数和后面的数以次比较找到最小值

for(int k=i+;k<arrlength;k++)

{

//如果arr[i]不是最小的则修改值

if(min>arr[k])

{

//修改最小

min=arr[k];

minIndex=k;

}

}

//当退出for就找到了这次的最小值并交换值

temp=arr[i];

arr[i]=arr[minIndex];

arr[minIndex]=temp;

}

}

}

//插入排序法

class InsertSort

{

public void sort (int arr[])

{

for(int i=;i<arrlength;i++)

{

//insertVal是准备插入的数

int insertVal=arr[i];

//insertVal准备和前一个数比较

int index=i; //前一个数的下标

while(index>=&&insertVal<arr[index])

{

//就把arr[index]向后移动一位

arr[index+]=arr[index];

//让index向前移动

index;

}

//将insertVal插入到适当位置

arr[index+]=insertVal;

}

}

}               

上一篇:Java实现双向链表

下一篇:Java图片添加水印