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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 不忘初心、 中级黑马   /  2015-8-31 13:35  /  192 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

数组操作(理解原理,并要求会写该算法的代码)
        1):冒泡排序原理:相邻元素两两比较,大的往后走,第一次完毕后,最大值就在最大索引处。
        2):冒泡排序代码
                public static void bubbleSort(int[] arr) {
                        // 外循环控制次数
                        for (int x = 0; x < arr.length - 1; x++) {
                                // 内循环控制每一次的比较过程
                                /*
                                 * 第一次,所有元素都参与比较,也就是0个元素不参与。
                                 *  第二次,有1个元素不用参与。
                                 *   第三次,有2个元素不用参与。 ...
                                 */
                                // -1是为了防止索引越界
                                // -x是为了减少比较的次数
                                for (int y = 0; y < arr.length - 1 - x; y++) {
                                        if (arr[y] > arr[y + 1]) {
                                                // 数据交换
                                                int temp = arr[y];
                                                arr[y] = arr[y + 1];
                                                arr[y + 1] = temp;
                                        }
                                }
                        }
                }

0 个回复

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