A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 俞帅明 中级黑马   /  2014-2-24 20:52  /  656 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文


  1. import java.util.Random;

  2. /**
  3. * BubbleSort
  4. * @author ice
  5. * @version 1.0
  6. */
  7. public class BubbleSort {

  8.     /**
  9.      * 随机数
  10.      */
  11.     static Random r = new Random();

  12.     /**
  13.      * 待排序数组
  14.      */
  15.     static int[] number = new int[10];

  16.     /**
  17.      * main()方法
  18.      * @param args main()方法参数
  19.      */
  20.     public static void main(String[] args) {
  21.         //初始化
  22.         init();
  23.         //排序
  24.         bubbleSort();
  25.         //输出
  26.         output();
  27.     }

  28.     /**
  29.      * 初始化数组
  30.      */
  31.     private static void init() {
  32.         //随机赋值
  33.         for (int i = 0; i < number.length; i++) {
  34.             number[i] = r.nextInt(1000);
  35.         }
  36.     }

  37.     /**
  38.      * 冒泡排序
  39.      */
  40.     private static void bubbleSort() {
  41.         for (int i = 0; i < number.length - 1; i++) {
  42.             for (int j = number.length - 1; j > i; j--) {
  43.                 //判断并且位置互换
  44.                 if (number[i] > number[j]) {//升序
  45.                     //按位异或,达到互换的目的
  46.                     number[i] ^= number[j];
  47.                     number[j] ^= number[i];
  48.                     number[i] ^= number[j];
  49.                 }
  50.             }
  51.         }
  52.     }

  53.     /**
  54.      * 输出数组
  55.      */
  56.     private static void output() {
  57.         for (int i = 0; i < number.length; i++) {
  58.             System.out.print(number[i] + "\t");
  59.             if ((i + 1) % 5 == 0) {
  60.                 System.out.println();
  61.             }
  62.         }
  63.     }
  64. }
复制代码

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马