
数组
数组刷题
Whisper~~~
00后 后端开发工程师
展开
-
删除有序数组中的重复项
删除有序数组中的重复项 方法一(双指针思想) 使用cnt来记录新数组的下标,t来记录添加到新数组中的每一个值。首先需要遍历原先数组,原先数组是有序排列的,因此遇到和前一个数不相同的时候就需要添加到新数组中,之后更新t。这时候t就作为最新的需要比较的数,如果之后的数和t不相同,则再添加到新数组中。这里的新数组并没有重新声明,而是在原先数组的基础上替换,cnt就用来表示每一次更新的数组的下标,从0开始。 public static int removeDuplicates(int[] nums) {原创 2021-11-06 16:30:08 · 144 阅读 · 0 评论 -
多数元素Leetcode
多数元素 方法一(哈希表) 利用哈希表来存储每一个元素以及元素出现的次数,当哈希表已经有该元素时,取出值并加一放入哈希表中,最后只需要遍历哈希表,找到值大于等于数组长度一半的键,返回即可。 public static int majorityElement(int[] nums) { Map<Integer,Integer > map = new HashMap<Integer,Integer >(); for(int i=0;i<nums.l原创 2021-11-06 16:05:51 · 109 阅读 · 0 评论