zoukankan      html  css  js  c++  java
  • 169.求数组中出现次数最多的元素 Majority Element

    Given an array of size n, find the majority element. The majority element is the element that appears more than ⌊ n/2 ⌋ times.

    You may assume that the array is non-empty and the majority element always exist in the array.

    Credits:
    Special thanks to @ts for adding this problem and creating all test cases.

    Subscribe to see which companies asked this question



    1. public class Solution {
    2. public int MajorityElement(int[] nums) {
    3. int length = nums.Length;
    4. int halfLength = length / 2;
    5. Dictionary<int, int> d = new Dictionary<int, int>();
    6. int value = 0;
    7. int num = 0;
    8. for (int i = 0; i < length; i++) {
    9. num = nums[i];
    10. if (d.TryGetValue(num, out value)) {
    11. d[num] += 1;
    12. } else {
    13. d[num] = 1;
    14. }
    15. }
    16. int element = 0;
    17. foreach (int i in d.Keys) {
    18. if (d[i] > halfLength) {
    19. element = i;
    20. }
    21. }
    22. return element;
    23. }
    24. }





  • 相关阅读:
    动画,缩放
    本地公司
    调研 公司信息
    外贸 内贸 经商
    情感 爱情 恋爱
    H5源码
    世界 生活
    标识
    Jackson
    java数据结构
  • 原文地址:https://www.cnblogs.com/xiejunzhao/p/22dca9ca828f0fd64a6d2541865bc657.html
Copyright © 2011-2022 走看看