一個尋找陣列中第二大數字的 Java 程式


要找到給定陣列的第二大元素,首先,對陣列進行排序

對陣列進行排序

  • 比較陣列的前兩個元素
  • 如果第一個元素大於第二個元素,就交換它們。
  • 然後,比較第 2 和第 3 個元素,如果第二個元素大於第三個元素,就交換它們。
  • 一直重複此過程,直到陣列結束。

對陣列進行排序後,列印陣列末尾的第二個元素。

示例

動態演示

public class ThirdLargestNumberInAnArray {
   public static void main(String args[]){
      int temp, size;
      int array[] = {10, 20, 25, 63, 96, 57};
      size = array.length;

      for(int i = 0; i<size; i++ ){
         for(int j = i+1; j<size; j++){

            if(array[i]>array[j]){
               temp = array[i];
               array[i] = array[j];
               array[j] = temp;
            }
         }
      }
      System.out.println("Third second largest number is:: "+array[size-2]);
   }
}

輸出

Third second largest number is:: 63

另一種解決方案

您還可以使用 java.util.Arrays 類 的 sort 方法對給定陣列的元素進行排序,然後列印陣列末尾的第二個元素。

示例

動態演示

import java.util.Arrays;
public class LargestNumberSample {
   public static void main(String args[]){
      int array[] = {10, 20, 25, 63, 96, 57};
      int size = array.length;
      Arrays.sort(array);
      System.out.println("sorted Array ::"+Arrays.toString(array));
      int res = array[size-2];
      System.out.println("2nd largest element is ::"+res);
   }
}

輸出

sorted Array ::[10, 20, 25, 57, 63, 96]
2nd largest element is ::63

更新於: 02-Sep-2023

65K+ 瀏覽次數

開啟您的 職業生涯

透過完成課程獲得認證

開始
廣告
© . All rights reserved.