Java 程序查找数组中第三大数

java programming java8java technologies object oriented programming

要查找给定数组中第三大数,首先要对数组进行排序。

对数组进行排序

  • 比较数组的前两个元素
  • 如果第一个元素大于第二个元素,则交换它们。
  • 然后,比较第二个和第三个元素,如果第二个元素大于第三个元素,则交换它们。
  • 重复此操作,直到数组末尾。
  • 对数组进行排序后,打印从数组末尾开始的第三个元素。

示例

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 largest number is:: "+array[size-3]);
   }
}

输出

Third largest number is:: 57

另一种解决方案

您还可以使用 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 max = array[size-3];
      System.out.println("3rd largest element is :"+max);
   }
}

输出

sorted Array ::[10, 20, 25, 57, 63, 96]
3rd largest element is :57

相关文章