题解 | #数组中出现次数超过一半的数字#
数组中出现次数超过一半的数字
http://www.nowcoder.com/practice/e8a1b01a2df14cb2b228b30ee6a92163
public class Solution {
reult = array[i];
times++;
times--;
}
}
}
return reult;
}
}
public int MoreThanHalfNum_Solution(int [] array) {
//用两个值记录当前值和次数
int reult = array[0],times = 1;
for(int i = 1;i<array.length;i++){
//出现次数为零,更新结果
if(times == 0){reult = array[i];
times++;
}else{
//结果和当前值相同,次数加加
if(reult == array[i]){
times++;
//结果和当前值不相同,次数减减
}else{times--;
}
}
}
return reult;
}
}