<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    【原】算法:冒泡排序+0后置算法

     

    /*
     * @(#)bubbleSort.java    1.01 09/11/24
     *
     * Copyright 2009 Three Stone.company, Inc. All rights reserved.
     * PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
     * this function implement as(-9 -4 0 7 4 -2 0 3 8)to(-9 -4 -2 3 4 7 8 0 0)sort code.
     
    */
    package edu.sort;

    public class bubbleSort {

        
    /**
         * 
    @see
         * 
    @param args
         * 
    @author GL
         * @category:實(shí)現(xiàn)隨機(jī)給出帶有正負(fù)整數(shù)的數(shù)組由小到大的排序(負(fù)數(shù)->正數(shù)->0)
         
    */
        
    public static void main(String[] args) {
            
    // TODO Auto-generated method stub
            int array[] = new int[20];//初始化數(shù)組
            for (int i = 0; i < array.length; i++) {
                
    int number = (int) (Math.random() * 10 * (Math.pow(-1, (int) (Math
                        .random() 
    * 10))));//初始化隨機(jī)正負(fù)數(shù)
                array[i] = number;
            }
            System.out.println(
    "初始序列為:");
            printNumbers(array);
            array 
    = bubble(array);//排序方法調(diào)入
            System.out.println("最后的排序?yàn)椋?/span>");
            printNumbers(array);

        }
        
    /**
         * 
    @param array[]
         * 
    @author GL
         * @category 冒泡排序并將所有0置后
         
    */
        
    public static int[] bubble(int array[]) {
            
    int length = array.length;
            
    for (int i = 0; i < length; i++) {
                
    for (int j = length - 1; j > i; j--) {
                    
    if (array[j] < array[j - 1]) {//冒泡原理"大小"換成"小大"
                        int temp = array[j];
                        array[j] 
    = array[j - 1];
                        array[j 
    - 1= temp;
                    }
                }
            }
            System.out.println(
    "冒泡排序結(jié)果為:");
            printNumbers(array);
            
            
    int count = 0;//記錄數(shù)組中0的個(gè)數(shù)
            int start = 0;//記錄0在數(shù)組中的初始出現(xiàn)位置
            for (int i = 0; i < array.length; i++) {
                
    if (array[i] == 0 && array[i - 1!= 0) {
                    start 
    = i + 1;
                    count 
    = 1;
                    System.out.println(
    "" + start + "位出現(xiàn)0");
                } 
    else if (array[i] == 0 && array[i - 1== 0) {
                    count
    ++;
                }
            }
            System.out.println(
    "0的個(gè)數(shù)為:" + count + "個(gè)");
            
    if (start != 0 && count != 0) {//按照0的初始出現(xiàn)位置與0的個(gè)數(shù)順次移動(dòng)元素
                for (int i = (start - 1); i < array.length; i++) {
                    
    if (i < (array.length - count)) {
                        array[i] 
    = array[i + count];
                    } 
    else {                //最后將數(shù)組后count位置0
                        array[i] = 0;
                    }
                }
            }
            
    return array;
        }
        
        
    /**
         * 
    @param array[]
         * 
    @author GL
         * @category 輸出情況討論
         
    */
        
    public static void printNumbers(int array[]) {
            
    for (int i = 0; i < array.length; i++) {
                
    if ((((i + 1% 10== 1&& array[i] >= 0) {//首位
                    System.out.print(" " + array[i] + "  ");
                } 
    else if ((i + 1% 10 != 0 && array[i + 1< 0) {//非尾負(fù)數(shù)
                    System.out.print(array[i] + " ");
                } 
    else if ((i + 1% 10 != 0 && array[i + 1>= 0) {//非尾正數(shù)
                    System.out.print(array[i] + "  ");
                } 
    else {
                    System.out.println(array[i]);
    //尾數(shù)
                }
            }
        }
    }

    posted on 2009-11-24 14:15 龍櫻 閱讀(307) 評(píng)論(0)  編輯  收藏 所屬分類: j2se類


    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    <2009年11月>
    25262728293031
    1234567
    891011121314
    15161718192021
    22232425262728
    293012345

    導(dǎo)航

    統(tǒng)計(jì)

    常用鏈接

    留言簿(3)

    隨筆分類(13)

    隨筆檔案(13)

    文章分類(1)

    文章檔案(1)

    搜索

    最新評(píng)論

    閱讀排行榜

    評(píng)論排行榜

    主站蜘蛛池模板: 亚洲无码一区二区三区| 男人都懂www深夜免费网站| 中文字幕亚洲日韩无线码| 久久爰www免费人成| 亚洲 欧洲 自拍 另类 校园| 国产大片51精品免费观看| 99精品免费视频| 亚洲另类无码专区首页| 亚洲自偷自偷在线制服| 97在线线免费观看视频在线观看 | 国产亚洲一区二区三区在线不卡| 四虎影视成人永久免费观看视频 | 亚洲国产另类久久久精品| 欧美好看的免费电影在线观看| 一级成人a做片免费| 亚洲激情电影在线| 亚洲人成电影网站国产精品 | 亚洲va在线va天堂va四虎 | 久久精品7亚洲午夜a| 午夜dj在线观看免费视频| 国色精品va在线观看免费视频| 日韩亚洲国产高清免费视频| 亚洲精品无码不卡在线播HE| 日韩一区二区在线免费观看| 午夜不卡久久精品无码免费 | 亚洲国产成人在线视频| 亚洲无线码一区二区三区| 日韩高清在线免费看| 亚洲人成免费网站| 91在线免费观看| 有色视频在线观看免费高清在线直播 | 国产极品粉嫩泬免费观看| 最好看的中文字幕2019免费| www成人免费视频| WWW亚洲色大成网络.COM| 久久精品国产亚洲av麻豆蜜芽| 亚洲成在人线av| 国产偷国产偷亚洲高清日韩| 成人国产mv免费视频| 毛片免费视频在线观看| 99精品在线免费观看|