LeetCode99|数组中出现次数超过一半的数字

时间:2022-07-26
本文章向大家介绍LeetCode99|数组中出现次数超过一半的数字,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

0x01,问题简述

数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。你可以假设数组是非空的,并且给定的数组总是存在多数元素。

0x02,示例

示例 1:

输入: [1, 2, 3, 2, 2, 2, 5, 4, 2]
输出: 2
 

限制:

1 <= 数组长度 <= 50000

0x03,问个问题,给个题解思路撒

其实这题如果你经常做的话,你会下意识的想到使用键值对集合HashMap来做,其通俗易懂的理解,有木有?其实也可以先排序Arrays.sort(),直接取中位数,怎么样?本题就是利用这两种方式来解答的。

0x04, 不要做一看就会,一做就跪的boy/girl,手动滑稽

其实我当时做算法题时,是持有抵触情绪的,因为我不会,就是这三个字,导致了自己中途放弃了很多,各种纠结,各种难受,但过往的路程只有自己明白,所以自己开始动手做了,就这样我也输出了100篇题解的leetcode文章了,慢一点,才能更快,98道leetcode

0x05,题解程序图片版,看完之后自己动手操作一下更好

0x06,总结一下

其实做题是一种思考的过程,也是一种总结的过程,在过去的一段时间里,自己做了很多题,但是一直没有以文章内容的形式输出,导致最近一段时间才慢慢输出的,其实输出文章的过程也是一段对自己比较友好的过程。

其中,自己可以再次看下题解,以更加简洁的代码来做出来,也是一个回顾的过程,同时也是在吃老本。这两篇文章是一起写的,所以文章的风格都可像了,图比较多。