• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
kohakuhubo
博客园    首页    新随笔    联系   管理    订阅  订阅

冒泡排序

冒泡排序顾名思义,就像是冒泡一样,每次都要把最大(相比较而言)的泡泡(值)选出来,用第n个元素个第n+1个元素相比较,如果n索引对应的值大于n+1索引对应的值,将两个索引对应的值对调,第一次循环结束后则会将最大值放在最后一个索引处,第二次循环时就开始在剩下的元素中选出最大值(第一次比较出来的最大值不用参与接下来的的比较)。
 1 package com.berry.algorithm.sort;
 2 
 3 /**
 4  * 冒泡排序
 5  */
 6 public class BubbleSort implements Sort {
 7 
 8     /**
 9      *
10      * @param array
11      * 冒泡排序顾名思义,就像是冒泡一样,每次都要把最大(相比较而言)的泡泡(值)选出来
12      * 用第n个元素个第n+1个元素相比较,如果n索引对应的值大于n+1索引对应的值,将两个
13      * 索引对应的值对调,第一次循环结束后则会将最大值放在最后一个索引处,第二次循环时
14      * 就开始在剩下的元素中选出最大值(第一次比较出来的最大值不用参与接下来的的比较)
15      */
16     @Override
17     public void sort(int[] array) {
18         int temp;
19         //外循环,每循环一次,就将前一次内循环选出来的最大值与接下来的内循环比较中排除开来
20         for(int i = array.length - 1; i >= 0;i--){
21             //内循环,每两个元素比较
22             for(int j = 0;j < i; j++){
23                 //如果j索引对应的值大于j+1索引对应的值
24                 if(array[j] > array[j + 1]){
25                     //开始对调
26                     temp = array[j];
27                     array[j] = array[j + 1];
28                     array[j + 1] = temp;
29                 }
30             }
31         }
32 
33     }
34 }

 

posted @ 2017-01-17 16:28  kohakuhubo  阅读(145)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3