查找数组中第二小的数字的 Java 程序


要查找给定数组中的第二小的元素,首先对数组进行排序。

排序数组

  • 比较数组的前两个元素
  • 如果第一个元素大于第二个元素,则将它们互换。
  • 然后,比较第 2 个和第 3 个元素,如果第 2 个元素大于第 3 个,则将它们互换。
  • 重复此操作,直至到达数组结尾。

对数组进行排序后,打印数组的第 2 个元素。

示例

在线演示

public class SmallestNumberInAnArray {
   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("2nd Smallest element of the array is:: "+array[0]);
   }
}

输出

The 2nd Smallest element of the array is:: 10

另一个解决方案

您还可以使用 java.util.Arrays 类的sort 方法对给定数组的元素进行排序,然后打印数组的第 2 个元素。

示例

在线演示

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[1];
      System.out.println("2nd smallest element is ::"+res);
   }
}

输出

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

更新时间:2024-6-21

10K+ 浏览量

开启你的职业生涯

完成课程并获得认证

开始入门
广告
© . All rights reserved.