栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

「冲刺大厂之算法」

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

「冲刺大厂之算法」

冲刺大厂之算法–第一天
打印给定INT类型整数的所有二进制位 思路:将所给定数字的每个二进制位与1相与。如果结果是0,代表该二进制位是0,反之该二进制位是1.
public static void printB(int num){
        for (int i = 31; i >= 0; --i) {
            System.out.print((num & (1 << i)) == 0 ? 0 : 1);
        }
        System.out.println();
    }

选择排序 思路:在所给定的数组中,每次选取数组中最小(或者最大)的数放在指定位置
public static void selectionSort(int[] arr){
        if(arr == null || arr.length < 2){
            return;
        }
        for(int i =  0; i < arr.length - 1; ++i){
            int minIndex = i;
            for(int j = i + 1; j < arr.length; ++j){
                minIndex = arr[j] < arr[minIndex] ? j : minIndex;
            }
            swap(arr, i, minIndex);
        }
    }
    public static void swap(int[] arr, int i, int j){
        int help = arr[i];
        arr[i] = arr[j];
        arr[j] = help;
    }

冒泡排序 思路:在给定的数组中,将每一位依次与下一位比较,如果前一位大于后一位,那么这两个位置进行交换,反之,不交换,继续向后。一次for循环过后,该数组中最大的数被放到数组最后。我们只需考虑 (0~n-1)、(0~n-2)、。。。。。。
public static void bubbleSort(int[] arr){
        if(arr == null || arr.length < 2){
            return;
        }
        for(int e = arr.length - 1; e > 0; --e){
            for(int i = 0; i < e; ++i){
                if(arr[i] > arr[i + 1]){
                    swap(arr, i, i + 1);
                }
            }
        }
    }
    public static void swap(int[] arr, int i, int j){
        int help = arr[i];
        arr[i] = arr[j];
        arr[j] = help;
    }

插入排序 思路:在给定数组中,依次考虑(0~0)、(0~1)、(0~2)、。。。。。。位置上是否有序,并将新位置上面的数插入到指定位置。(就像打牌时候码牌一样)
public static void insertionSort(int[] arr){
        if(arr == null || arr.length < 2){
            return;
        }
        for(int i = 1; i < arr.length; ++i){
            for(int j = i - 1; j >= 0 && arr[j] > arr[j + 1]; --j){
                swap(arr, j, j + 1);
            }
        }
    }
    public static void swap(int[] arr, int i, int j){
        int help = arr[i];
        arr[i] = arr[j];
        arr[j] = help;
    }
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/878225.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号