java算法基礎面試題


1、輸入三個數a、b、c,按大小順序輸出

可以利用冒泡排序去實現,代碼如下所示:

/**
     * 輸入三個數a\b\c,按大小順序輸出
     *
     * @param arrays arrays
     */
private static void arraySort(int[] arrays) {
    for (int i = 0; i < arrays.length; i++) {
        for (int j = 0; j < arrays.length - 1; j++) {
            int temp;
            if (arrays[j] < arrays[j + 1]) {
                temp = arrays[j];
                arrays[j] = arrays[j + 1];
                arrays[j + 1] = temp;
            }
        }
    }

    System.out.println("冒泡排序結果:" + Arrays.toString(arrays));
}

2、對一個數組,先做逆序,再做輸出

就是將一個數組倒序輸出即可,代碼如下所示:

/**
     * 對一個數組,先做逆序,再做輸出
     *
     * @param arrays arrays
     */
private static void arrayRe(int[] arrays) {
    int temp;
    for (int i = arrays.length - 1; i > arrays.length / 2; i--) {
        temp = arrays[i];
        arrays[i] = arrays[arrays.length - 1 - i];
        arrays[arrays.length - 1 - i] = temp;
    }

    System.out.println(Arrays.toString(arrays));
}

3、輸出100-999之間的水仙花數

所謂水仙花數就是個位數的三次方加上十位數的三次方加上百位數的三次方等於這個數本身的數。代碼如下所示:

private static void shui() {
    for (int i = 100; i <= 999; i++) {
        // 個位數
        int a = i % 10;
        // 十位數
        int b = i / 10 % 10;
        // 百位數
        int c = i / 100 % 10;
        int d = a * a * a + b * b * b + c * c * c;
        if (d == i) {
            System.out.println("100-999中的水仙花數有:" + i + ",");
        }
    }
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM