冒泡排序 与选择排序的逻辑实现 详解-----------博
2018-02-06 19:24
344 查看
import java.util.Arrays;
public class sort {
//冒泡排序,选择排序
public static void main(String[] args) {
int[] oldArray1= {1,2,666,-1,222};//定义一个需要的数组
int[] newArray1=getArray1(oldArray1);//调用冒泡排序的方法
System.out.println("冒泡排序后为:"+Arrays.toString(newArray1));
int[] oldArray2= {1,2,8888,555,-11};
int[] newArray2=getArray2(oldArray2);//调用选择排序的方法
System.out.println("选择排序后为:"+Arrays.toString(newArray2));
}
//冒泡排序
public static int[] getArray1(int[] array1) {
for(int i=0;i<array1.length;i++) {//冒泡排序的趟数
for(int j=0;j<array1.length-1;j++) {//每趟的次数
if(array1[j]>array1[j+1]) {//每次比较的数的位置
int temp1=array1[j];//如果后边的比前边的小,交换两位
array1[j]=array1[j+1];
array1[j+1]=temp1;
}
}
}
return array1;//返回值
}
//选择排序
public static int[] getArray2(int[] array2) {
for(int i=0;i<array2.length-1;i++) {//趟数,因为只比到前一位,最后一次的
//位置在最后一位的前一位
for(int j=i+1;j<array2.length;j++) {//每趟中的每次,从i的后一位开始
if(array2[j]<array2[i]) {//如果j位小于i位,则交换
int temp2=array2[i];
array2[i]=array2[j];
array2[j]=temp2;
}
}
}
return array2;//返回数组
}
}
public class sort {
//冒泡排序,选择排序
public static void main(String[] args) {
int[] oldArray1= {1,2,666,-1,222};//定义一个需要的数组
int[] newArray1=getArray1(oldArray1);//调用冒泡排序的方法
System.out.println("冒泡排序后为:"+Arrays.toString(newArray1));
int[] oldArray2= {1,2,8888,555,-11};
int[] newArray2=getArray2(oldArray2);//调用选择排序的方法
System.out.println("选择排序后为:"+Arrays.toString(newArray2));
}
//冒泡排序
public static int[] getArray1(int[] array1) {
for(int i=0;i<array1.length;i++) {//冒泡排序的趟数
for(int j=0;j<array1.length-1;j++) {//每趟的次数
if(array1[j]>array1[j+1]) {//每次比较的数的位置
int temp1=array1[j];//如果后边的比前边的小,交换两位
array1[j]=array1[j+1];
array1[j+1]=temp1;
}
}
}
return array1;//返回值
}
//选择排序
public static int[] getArray2(int[] array2) {
for(int i=0;i<array2.length-1;i++) {//趟数,因为只比到前一位,最后一次的
//位置在最后一位的前一位
for(int j=i+1;j<array2.length;j++) {//每趟中的每次,从i的后一位开始
if(array2[j]<array2[i]) {//如果j位小于i位,则交换
int temp2=array2[i];
array2[i]=array2[j];
array2[j]=temp2;
}
}
}
return array2;//返回数组
}
}
相关文章推荐
- 排序基础之插入排序、冒泡排序、选择排序详解与Java代码实现
- 三种简单排序的实现(冒泡排序,选择排序,插入排序 )
- PHP四种排序算法实现及效率分析【冒泡排序,插入排序,选择排序和快速排序】
- 排序算法一:冒泡排序,插入排序以及选择排序原理与MATLAB实现
- java实现选择排序和冒泡排序及执行流程图解
- Java实现排序(快速排序、冒泡排序、选择排序、基数排序、插入排序)
- 最简单之Java实现冒泡排序、选择排序、插入排序、希尔排序、归并排序和快速排序(转载请注明出处)
- java实现冒泡排序,选择排序,插入排序算法详解
- 基础排序——冒泡排序、选择排序、插入排序的讲解、代码实现
- Java实现数组排序含冒泡排序、选择排序
- 冒泡排序、选择排序、直接插入排序(java实现)
- 选择排序和冒泡排序的实现
- 算法 -- iOS开发用Objective_C / Swift3.0实现:快速排序 / 冒泡排序 / 选择排序
- 几种基本的排序算法(选择排序,冒泡排序,快速排序,归并排序,希尔排序)C语言实现
- PHP实现插入排序,选择排序,冒泡排序和快速排序
- 快速排序,选择排序,直接插入,冒泡排序的javascript实现
- JAVA实现简单的冒泡排序与选择排序
- 算法导论之插入排序,选择排序,归并排序,冒泡排序,希尔排序,堆排序,快速排序的c语言实现
- 使用C语言和Java分别实现冒泡排序和选择排序
- 快速排序,冒泡排序,直接选择排序的算法实现