抉择排序-java实现
选择排序-java实现
应该没错的。选择排序遍历一遍找到最小的元素进行交换,只有array[min]元素和array[i]有交换,数列其他元素没有调整。冒泡会导致数列进行多次交换。不过这两个算法思想上区别不大
应该没写错的。。。Java 的Sort方法是优化的快速排序,写这个复习下数据结构,请多指教
package test; /* * CHOUSESORT(A) * for i ← 1 to length(A) * min ← i * j ← min+1 * for j<length(A) * if A(j)<A(min) * min ← j * swap A(min) A(i) */ import java.util.Arrays; public class Sort { public static void chouseSort(int array[]) { for(int i=0;i<array.length;i++) { int min=i; for(int j=min+1;j<array.length;j++) { if(array[j]<array[min]) min=j; } int temp=array[min]; array[min]=array[i]; array[i]=temp; } } public static void main(String args[]) { int array[]={10,9,8,7,6,5,4,3,2,1}; Sort.chouseSort(array); System.out.println(Arrays.toString(array)); } }
1 楼
嗜血狂魔
2011-11-14
奇了怪了,你这方法不伦不类,是冒泡算法的复杂写法吧。
2 楼
sshmecity
2011-11-14
[color=violet][/color]
我感觉是得 复杂的冒泡 直接调用SORT方法就可以了。。。
嗜血狂魔 写道
奇了怪了,你这方法不伦不类,是冒泡算法的复杂写法吧。
我感觉是得 复杂的冒泡 直接调用SORT方法就可以了。。。
3 楼
kevin_in_java
2011-11-14
嗜血狂魔 写道
奇了怪了,你这方法不伦不类,是冒泡算法的复杂写法吧。
应该没错的。选择排序遍历一遍找到最小的元素进行交换,只有array[min]元素和array[i]有交换,数列其他元素没有调整。冒泡会导致数列进行多次交换。不过这两个算法思想上区别不大
4 楼
kevin_in_java
2011-11-14
sshmecity 写道
[color=violet][/color]
我感觉是得 复杂的冒泡 直接调用SORT方法就可以了。。。
嗜血狂魔 写道
奇了怪了,你这方法不伦不类,是冒泡算法的复杂写法吧。
我感觉是得 复杂的冒泡 直接调用SORT方法就可以了。。。
应该没写错的。。。Java 的Sort方法是优化的快速排序,写这个复习下数据结构,请多指教