Java 中子陣列中查詢大於給定數字的元素
在 Java 中,陣列是一個物件。它是一種非原始資料型別,用於儲存相同資料型別的值。
根據問題陳述,我們給定了一個子陣列和一個數字,我們必須找到這個子陣列中多少個元素大於該給定數字。因此,我們必須將陣列的每個元素與給定數字進行比較,如果任何一個元素大於給定數字,則列印該元素。
讓我們探索本文,看看如何使用 Java 程式語言來實現它。
為您展示一些例項
例項 1
Given Array= [12, 23, 34, 45, 15]. Given sub array= [12, 23, 34] Given number = 25 The elements which are greater than the given number = 34
例項 2
Given Array= [38, 94, 86, 63, 36]. Given sub array= [94, 86, 63, 36] Given number = 90 The elements which are greater than the given number = 94
例項 3
Given Array= [54, 67, 23, 95, 74, 60]. Given sub array= [23, 95, 74] Given number = 30 The elements which are greater than the given number = 95, 74
演算法
演算法 1(無需額外陣列)
步驟 1 - 透過靜態或使用者輸入方法宣告一個整數型別的陣列。
步驟 2 - 使用 for 迴圈並從子陣列的起始索引迭代到結束索引,並檢查條件,如果任何元素大於給定數字,則列印該元素。
演算法 2(使用額外陣列)
步驟 1 - 透過靜態或使用者輸入方法宣告一個整數型別的陣列。
步驟 2 - 宣告一個子陣列,並使用子陣列的起始和結束索引獲取元素。
步驟 3 - 使用 for 迴圈列印子陣列內的元素,如果任何數字大於給定數字。
語法
要獲取陣列的長度(陣列中的元素數量),陣列有一個內建屬性,即length。
下面是它的語法−
array.length
其中,“array”指的是陣列引用。
多種方法
我們提供了不同方法的解決方案。
無需額外陣列
使用額外陣列
讓我們逐一檢視程式及其輸出。
方法 1:無需額外陣列
在這種方法中,我們宣告並初始化一個數組,然後根據演算法,我們在子陣列中找到大於給定元素的數字。這裡我們不使用另一個額外陣列,即子陣列。
示例
import java.util.*;
public class Main {
public static void main(String args[]) {
Scanner sc=new Scanner(System.in);
//declared an array
int[] inputArray = {2, 6, 1, 7, 9, 3, 5};
System.out.println("Given array: " + Arrays.toString(inputArray));
//index range for sub array
int indx1=1;
int indx2=5;
//number to compare
int num= 4;
int a=0;
System.out.println("Greater numbers in the subarray: ");
for(int i=indx1; i<=indx2; i++) {
if(inputArray[i]>num) {
System.out.println(inputArray[i]+" ");
}
}
}
}
輸出
Given array: [2, 6, 1, 7, 9, 3, 5] Greater numbers in the subarray: 6 7 9
方法 2:使用額外陣列
在這種方法中,我們宣告並初始化一個數組,然後根據演算法,我們在子陣列中找到大於給定元素的數字。這裡我們使用另一個額外陣列,即子陣列。
示例
import java.util.*;
public class Main{
public static void main(String args[]) {
Scanner sc=new Scanner(System.in);
//declared an array
int[] inputArray = {2, 6, 1, 7, 9, 3, 5, 8};
System.out.println("Given array: " + Arrays.toString(inputArray));
//index range for sub array
int indx1=2;
int indx2=6;
//Declared the subarray
int[] subArray = new int[indx2 - indx1 + 1];
int a=0;
//store elements in subarray
for(int i=indx1; i<=indx2; i++){
subArray[a]=inputArray[i];
a+=1;
}
System.out.println("Your sub-array: " + Arrays.toString(subArray));
//number to compare
int num= 5;
System.out.println("Greater numbers present in the subArray: ");
greaterNumber(subArray,num);
}
//method to find greater numbers than a given number
public static void greaterNumber(int[] arr,int n) {
for(int i=0; i<arr.length; i++) {
if(arr[i]>n) {
System.out.println(arr[i]+" ");
}
}
}
}
輸出
Given array: [2, 6, 1, 7, 9, 3, 5, 8] Your sub-array: [1, 7, 9, 3, 5] Greater numbers present in the subArray: 7 9
在本文中,我們探討了如何使用 Java 程式語言在子陣列中查詢大於給定數字的元素。
廣告
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP