我的冒泡算法

接触JAVA以来...一直没注意过写什么算法...
今天笔试写冒泡算法时也写错了...今晚特地回来写一个....经过快一个钟的OOXX..终于搞
出来了...唉...就算给别人BS..不过总算自已也会写了....
 public static void main(String[] args){
    
        int[] a={12,97,15,96,48,58,61,44,26,84};
        
        for(int i=0;i<a.length;i++){
            for(int j=i+1;j<a.length;j++){
                
                if(a[i]>a[j]){
                    int tempInt=a[j];
                    a[j]=a[i];
                    a[i]=tempInt;
                }    
            }   
            
        
        }    
        
        int k=0;
        for(int b:a){
            
            System.out.println(k+" : "+b);
            k++;
        }    
    }    

呵呵...特意不去看别人怎么写法...自已理清思路后终于写出来了...
感觉要注意两点:
1.排过的数的就不用再比较了..例如第一个数找到最小的数填上后,那第一个数就不再参加下次比较.依此类堆..比较的数会越来越少...
2.当把a[j]值赋比a[i]时,记得把a[i]赋给a[j],一开始没发觉这点.老找不到错误的原因...郁闷....

你可能感兴趣的:(算法,J#)