冒泡排序

作者: 许佩利翁 | 来源:发表于2017-05-09 12:15 被阅读0次

    作为一个<strong>iOS</strong>开发人员,最近自学Java,温习一下基本的排序方法,发现写出来还挺费劲的,已经是一条废🐶了。

    简介:

    <strong>冒泡排序</strong>, 最简单的排序之一,原理就是比较临近的两个元素,大的向后小的向前,把大的交换到右端。

    <strong>举例说明:</strong>
    现在有一个数组:   int[] numArr = {4,31,1,22};

    <strong>第一次比较如下:</strong>

    4和31比较 4<31 交换后 {4,31,22,1}; 
    31和22比较 31>22 交换后 {4,22,31,1};
    31和1比较 31>1 交换后 {4,22,1,31};
    

    <strong>第二次比较如下:</strong>

    4和22比较 4<22 不交换 {4,22,1,31};
    22和1比较 22>1 交换后 {4,1,22,31};
    

    <strong>第三次比较如下:</strong>

    4和1比较 4>1 交换后 {1,4,22,31};
    
    

    <strong>具体代码如下:</strong>

    public class Sort {
        public static void main(String[] args) {
            int[] numArr = {4,31,22,1};
            sortMethod(numArr);
            for (int element : numArr) {
                System.out.print(" "+ element);
            }       
        }
        
        static int[] sortMethod(int[] numArr) {
            for (int i = 0; i < numArr.length-1; i++) {
                for (int j = 0; j < numArr.length-1-i; j++) {               
                    if (numArr[j] > numArr[j+1]) {
                        int temp = numArr[j];
                        numArr[j] = numArr[j+1];
                        numArr[j+1] = temp;
                    }
                }
            }
            return numArr;
        }
    }
    

    <strong>命令台输出如下:</strong>

     1 4 22 31
    

    相关文章

      网友评论

        本文标题:冒泡排序

        本文链接:https://www.haomeiwen.com/subject/ompbtxtx.html