Java程式返回列表中最大元素


我們可以使用陣列迴圈從列表中返回最大元素。主要方法是比較模型。列表中存在的最大數字將與該特定列表中存在的所有元素進行比較。該過程將“n”視為輸入的數量,這些輸入將作為資料值儲存在陣列中。之後,程式將在迴圈細化後在輸出控制檯上顯示最大元素。

在今天的這篇文章中,我們將幫助您理解和編寫一些Java程式碼,透過這些程式碼您可以從陣列列表中找到最大元素。

如何使用Java從陣列中選取最大數字?

我們可以透過對陣列排序來找到最大數字。定義一個void ArrayList並將陣列的所有元素新增到其中。將ArrayList傳遞給Collections.max(),整個過程將執行。

  • 對於此操作,您可以在開始時將一組輸入宣告為陣列形式。這為執行邏輯建立了一個基礎。該演算法使用此迴圈來找出特定結果(該迴圈的最大數字)。

示例

讓我們舉個例子。

arr[]= {1,10,4,15,9,85,63,108}

輸出

Output: 108
  • 要從陣列中找到最大數字,通常使用兩種型別的函式:

    • Max () – 用於從列表中查詢最大函式

    • for迴圈 - 用於對每個元素進行迭代。

  • 首先,您應該宣告一個數組,然後對其進行初始化。對於迭代,我們需要兩個迴圈,然後比較元素以獲得最大數字,資料需要以降序交換。

查詢列表中最大元素的演算法

以下是使用Java查詢列表中最大元素的一般演算法:

  • 步驟1 - 開始

  • 步驟2 - 初始化arr[]

  • 步驟3 - max=arr[0]

  • 步驟4 - i=0;i<arr.length;i++

  • 步驟4 - if (arr[i]>max)max=arr[i]

  • 步驟5(1) - 列印

  • 步驟5(2) - 列印MAX

  • 步驟6 - 終止

語法

有兩種方法可以執行此操作。在下面的語法中,描述了這兩種方法。

  • coll表示:將從中過濾出最大元素的總集合。

  • comp表示:可以執行操作的比較器。

public static <T extends an Object & make it Comparable<? super T>> T max(Collection of data <? extends T> coll)  
  or;
public static <T> T max(Collection of the data <? extends T> coll, Comparator<? super T> comparator)

以下方法可用於查詢陣列列表中的最大值:

  • 方法1 - 迭代方法

  • 方法2 - Java 8流中的Int方法

  • 方法3 - max()方法

  • 方法4 - 使用ForEach迴圈

  • 方法5 - 使用庫函式

使用迭代方法

在這種方法中,時間複雜度基於給定資料集的大小為0。並且不需要輔助空間。

  • 遞迴方式獲取最大值。

  • 方法的基本條件:if,(m==1)返回值arr[0]

  • 否則,獲取返回的值:最大值(arr[n-1],getmax(arr[],n-1))

示例

import java.util.*;  
public class CollectionsofmaxfileARRDD {  
   public static void main (String[] args) {  
      List<Integer> list = Arrays.asList(2010, 1010, 1001, 1400, 2501);  
      Integer max = Collections.max(list, Collections.reverseOrder());  
      System.out.println("Output from the particular string: "+max);  
   }  
}    

輸出

Output from the particular string: 1001

在Java 8流中使用Int方法

在這種方法中,時間複雜度完全為0,輔助空間不需要額外的空間,因為它是一個常數。

示例

import java.util.Arrays;
public class arbrdd {
   public static void main (String[] args){
      int arr[] = {07, 16, 10, 2001, 1997};
      int max = Arrays.stream(arr).max().getAsInt();
      System.out.println("Largest array is found from the array list" +max);
   }
}     

輸出

Largest array is found from the array list2001

使用max()方法

使用max()方法,我們將使用以下過程構建Java程式碼:

  • 使用max宣告變數

  • 用陣列的第一個元素初始化

  • 執行迴圈

  • array[a]>maximum,設定max = array[a]

  • 列印輸出

示例

import java.util.*;
public class arbrdd{
   public static void main(String[] args){
      int arr[] = {10, 07, 16, 2001,1997};
      List<Integer> list = new ArrayList<>();
      for(int a=0;a<arr.length;a++){
         list.add(arr[a]);
      }
      System.out.println("Largest array present in the particular array list is " +Collections.max(list));
   }
}    

輸出

Largest array present in the particular array list is 2001

使用ForEach迴圈

使用ForEach迴圈,我們將使用以下過程構建Java程式碼:

  • 呼叫遞迴say get max

  • 操作的基本條件:if,(a==1)返回array[0]

  • 否則,返回max(array[a-1],getmax(array,a-1))

示例

import java.util.Arrays;
import java.util.List;
public class maxarrayval {
   public static void main(String[] args){
      List<Integer> arrayList
      = Arrays.asList(10, 07, 16, 2001, 1997, 10052022);
      int maxValue0710 = Integer.MIN_VALUE;
      for (Integer integer : arrayList) {
         if (integer > maxValue0710)
         maxValue0710 = integer;
      }
      System.out.println("The maximum value present in the array is " + maxValue0710);
   }
}   

輸出

The maximum value present in the array is 10052022

使用庫函式

使用庫函式,我們將使用以下過程構建Java程式碼:

  • Maximum(arr,0,end)

  • 從該陣列列表中讀取倒數第二個元素

  • 查詢陣列資料中倒數第二個和最後一個元素之間的較大元素

  • 最大值遞迴迭代

  • 結束

示例

import java .io.*;
import java.util.*;
public class ARBRDD{
   static int largest(int []arr,int n){
      Arrays.sort(arr);
      return arr[n - 1];
   }
   static public void main (String[] args){
      int []arr = {07, 10, 2001,1997, 10052022};
      int n = arr.length;
      System.out.println(largest(arr, n));
   }
}   

輸出

10052022

結論

在本文中,我們學習瞭如何使用Java從陣列列表中返回最大元素。

透過此處提到的邏輯編寫的可能條件和程式,我們如何使用陣列迴圈以及此處編寫的一些程式碼的所有可能條件和過程來滿足每個理論。

更新於:2023年3月31日

3K+ 次瀏覽

開啟你的職業生涯

透過完成課程獲得認證

開始
廣告

© . All rights reserved.