暑假自己随便学了一下java,虽然说不上很熟悉,但是基本语句和c++啥的还是有点差别,不过有c和c++的基础,理解起来会容易一点;
一个合格的码农必须要了解几种不同的语言,最近学oc也感觉还不错。
昨晚看java视频,几种排序,现在来一发二分排序。
package Sort;
public class Sort {
public void halfsort(int[] array){
int low,high,middle,temp,index,i;
for(i=1;i<array.length;i++){
low = 0;
high = i - 1;
temp = array[i];
index = i;
if(array[0]<temp&&array[i-1]>temp){
while(low<=high){
middle=(low+high)/2;
if(array[middle]>temp){
high=middle-1;
}
else{
low=middle+1;
}
}
index=low;
}
if(array[0]>=temp){
index=0;
}
if(array[i-1]<=temp){
index=i;
}
for(int j =i-1;j>=index;j--){
array[j+1]=array[j];
}
array[index]=temp;
}
for(int j:array){
System.out.print(j+" ");
}
}
public static void main(String[] args) {
int[] array = new int[]{78,29,645,54,2321};
Sort sorter = new Sort();
sorter.halfsort(array);
}
}