玩命加载中 . . .

数组的常用算法(29)


数组的常用算法

冒泡排序

        // 冒泡排序
        int[] a1 = {8,3,5,6,9};
        for (int i = a1.length-1; i > 0; i--) {
            for (int j = 0; j < i; j++) {
                if (a1[j] > a1[j+1]) {
                    int temp = 0;
                    temp = a1[j];
                    a1[j] = a1[j+1];
                    a1[j+1] = temp;
                }
            }
        }

选择排序

int[] a2 = {7,8,3,2};
        for (int i = 0; i < a2.length-1; i++) {
            int min = i;
            for (int j = i+1; j < a2.length; j++) {
                if (a2[min] > a2[j]) {
                    min = j;
                }
            }
            if (min!=i) {
                int temp = 0;
                temp = a2[i];
                a2[i] = a2[min];
                a2[min] = temp;
            }
        }

二分法查找(折半查找)

    public static int binarySearch(int[] a,int destElement) {
        // 开始下标
        int begin = 0;
        // 结束下标
        int end = a.length-1;
        while (begin<=end) {
            // 中间下标
            int mid = (begin+end)/2;
            if (a[mid] == destElement) {
                return mid;
            }else if(a[mid] > destElement) {
                end = mid-1;
            }else if(a[mid] < destElement) {
                begin = mid + 1;
            }
        }
        return -1;
    }

文章作者: 小靳同学
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 小靳同学 !
评论
 上一篇
Arrays工具集(30) Arrays工具集(30)
Arrays工具集 Arrays是cun公司提供的一个工具集 该工具主要针对的是数组的操作 例如:排序/二分等… 示例代码:
2021-09-18
下一篇 
二维数组(28) 二维数组(28)
二维数组静态数组 创建静态数组语法: int[][] a1 = { {11,22,33,44
2021-09-15
  目录