來自力扣(LeetCode)
尋找陣列中主要元素
- 題目描述
- 解決思路
- 實作代碼
題目描述
陣列中占比超過一半的元素稱為“主要元素”,也就是說,陣列某個元素出現的次數大于陣列長度的一半,該元素可稱為主要元素,給定一個整型陣列,找到它的主要元素,如果沒有則回傳-1,
解決思路
雙指標法
畫圖示意一下
實作代碼
public static int majorElement(int[] arr){
//對于此題而言,把握好i和j的邊界非常關鍵
for (int i = 0; i <= arr.length/2; i++) {
for (int j = arr.length/2; j < arr.length; j++) {
if(arr[i] == arr[j]){
return arr[i];
}
}
}
return -1;
}
public static void main(String[] args) {
int[] arr1 = {4,3,3,8,8,3,8,10,3,3,3};
System.out.println("陣列中的主要元素為: "+majorElement(arr1));
}
}
運行結果如下:

轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/238052.html
標籤:java
上一篇:String類
下一篇:Java界面開發
