选择排序和冒泡排序的区别
2014-09-09 11:45
190 查看
//排序
public class Demo {
public static void main(String[] args)
{
int arr[] ={1,7,4,9,13,22,66,33,23};
//sort1(arr);
sort2(arr);
printArray(arr);
}
//选择排序,每次找到最小的数后,再进行交换
public static void sort1(int[] arr)
{
for(int i = 0; i<arr.length-1;i++)
{
int iTemp = arr[i];
int iPos = i;
for(int j=i+1;j<arr.length;j++)
{
if(arr[j]<iTemp)
{
iTemp = arr[j];
iPos = j;
}
}
arr[iPos] = arr[i];
arr[i] = iTemp;
}
}
//冒泡排序,每次比较都进行交换,把最小的放在最左边
public static void sort2(int[] arr)
{
for(int i=0;i<arr.length-1;i++)
{
for(int j=i;j<arr.length-1;j++){
if(arr[j]>arr[j+1])
{
int temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
}
public static void printArray(int[] arr)
{
for(int i =0 ;i<arr.length;i++)
{
System.out.print(arr[i]+" ");
}
}
}
public class Demo {
public static void main(String[] args)
{
int arr[] ={1,7,4,9,13,22,66,33,23};
//sort1(arr);
sort2(arr);
printArray(arr);
}
//选择排序,每次找到最小的数后,再进行交换
public static void sort1(int[] arr)
{
for(int i = 0; i<arr.length-1;i++)
{
int iTemp = arr[i];
int iPos = i;
for(int j=i+1;j<arr.length;j++)
{
if(arr[j]<iTemp)
{
iTemp = arr[j];
iPos = j;
}
}
arr[iPos] = arr[i];
arr[i] = iTemp;
}
}
//冒泡排序,每次比较都进行交换,把最小的放在最左边
public static void sort2(int[] arr)
{
for(int i=0;i<arr.length-1;i++)
{
for(int j=i;j<arr.length-1;j++){
if(arr[j]>arr[j+1])
{
int temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
}
public static void printArray(int[] arr)
{
for(int i =0 ;i<arr.length;i++)
{
System.out.print(arr[i]+" ");
}
}
}
相关文章推荐
- 冒泡排序,选择排序,插入排序的区别
- 黑马程序员--冒泡排序和选择排序的区别
- 冒泡排序和选择排序的区别
- 冒泡排序、选择排序的区别
- 选择排序和冒泡排序的区别
- 冒泡排序和选择排序区别
- java中冒泡排序与选择排序的区别
- 冒泡排序 和 选择排序的 区别 python
- 冒泡排序和直接选择排序的区别(转自网络)
- 冒泡排序和选择排序区别
- 选择排序和冒泡排序区别以及冒泡排序优化
- 选择排序和冒泡排序的区别
- 冒泡排序与选择排序区别
- C#排序算法:冒泡排序 选择排序 插入排序 希尔排序
- 排序算法‘冒泡排序,选择排序,快速排序’
- C#的四种排序算法:冒泡排序、选择排序、插入排序和希尔排序
- java实现 冒泡排序 插入排序 选择排序
- 关于选择排序与冒泡排序
- 冒泡排序 选择排序
- 冒泡排序、选择排序