作者JustinHere (良葛格)
看板java
标题Re: [请益] 选择性排序
时间Fri Nov 10 22:03:38 2006
: ※ 引述《[email protected] (Stu student)》之铭言:
: > 假设有宣告如下
: > String[] names = {“Bunny”, “Ape”, “Orange”, “Cabbage”, “Mickey”, “
: > Juice”};
: > 利用选择性排序对 names 做排序 .
: > 囧掉了QQ
: > 有谁可以帮忙写出相关QQ 我会自己在想想的QQ
http://www.caterpillar.onlyfun.net/Gossip/
AlgorithmGossip/SelectionInsertionBubble.htm
String有实作java.lang.Comparable介面,可以利用compareTo()
来直接知道谁大谁小…
public class Test {
public static void selectionSort(String[] strs) {
for(int i = 0; i < strs.length - 1; i++) {
int m = i;
for(int j = i + 1; j < strs.length; j++) {
if(strs[j].compareTo(strs[m]) < 0) {
m = j;
}
}
if(i != m) {
swap(strs, i, m);
}
}
}
private static void swap(String[] strs, int i, int j) {
String t;
t = strs[i];
strs[i] = strs[j];
strs[j] = t;
}
public static void main(String[] args) {
String[] names =
{"Bunny", "Ape", "Orange", "Cabbage", "Mickey", "Juice"};
selectionSort(names);
for(String name : names) {
System.out.println(name);
}
}
}
--
良葛格学习笔记
http://caterpillar.onlyfun.net/Gossip/
※ 编辑: JustinHere 来自: 219.86.71.144 (11/10 22:13)