package Suanfa; /** * @author jixiang * 在一個數組中找到次數超過一半的數字 */ public class MoreThanHalfNum { public static void main(String[] args) { int[] nums={2,3,1,3,4,1,5,1,1,2,1,1,1}; int Result; int times=1; Result=nums[0]; for(int i=1;i<nums.length;i++){ if(times==0){ Result=nums[i]; } else { if(Result==nums[i]){ times++; } else { times--; } } } System.out.println("數組中出現次數超過一半的結果是"+Result); } }
代碼天然先擼爲敬!很簡單,既然有個數出現的次數大於數組長度一半,則確定他出現一次,times就加1,下次看到不是在減1.最後剩下誰就是誰!java