System.out.println (" 排 序 之 前 : \n" +java.util.Arrays.toString (data));中的java.util.Arrays.toString (data))是如何理解的?是數組轉集合嗎?java
快排總體代碼沒有看懂算法
歸併總體代碼沒有看懂數組
手寫spark-workcount沒看懂spa
public class BubbleSort{
public static void bubbleSort(int[] data){
System.out.println("開始排序");
for(int i=0;i<data.length-1;i++){
for(int j=0;j<data.length-1-i;j++){
//此處爲何要設置false?
boolean flag = false;
if(data[j]>data[j+1]){
int tmp = data[j+1];
data[j+1] = data[j];
data[j] = tmp;
//此處爲何要設置flag = true?
flag = true;
}
}
System.out.println(java.util.Arrays.toString(data));
if(!flag){
break;
}
}
}排序
//<E extends Comparable<E>中的E是個什麼類?繼承CompareTo有什麼做用?int binarySerch()是返回一個int類型的下標嗎?
public static <E extends Comparable<E>> int binarySerch(E[]array ,int from,int to,E key)throws Exception{
if(from < 0 || to < 0){
throw new IllegalArgumentException("params from & length must larger than 0.");
}
if(from <= to){
//>>>表明什麼意思?
int middle = (from >>>1) +(to >>>1);
E temp = array[middle];
if(temp.compareTo(key) > 0){
to = middle-1;
}else if(temp.copareTo(key)<0){
from = middle+1;
}else{
return middle;
}
}
return binarySerch(array,from,to,key);
}繼承