题解 | #草原上的牛群# java
草原上的牛群
https://www.nowcoder.com/practice/0661aa40ac8e48f4906df7aa24c3db90
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param nums int整型一维数组 * @return int整型 */ public int remove_duplicates (int[] nums) { // write code here HashMap<Integer, Integer> map = new HashMap<>(); int count = 0; for (int i = 0; i < nums.length; i++) { if (!map.containsKey(nums[i])) { count++; } map.put(nums[i], map.getOrDefault(nums[i], 0) + 1); } return count; } }
编程语言是Java。
该题考察的知识点包括列表或数组操作、哈希表/字典、条件语句和计数器。
该Java代码是用于在给定整数列表中计算不重复元素的个数,并使用HashMap记录元素及其出现次数,每次遍历过程中,我们通过map.containsKey(nums.get(i))
判断当前元素是否已经存在于HashMap中。如果不存在,说明遇到了一个新的不重复元素,我们将计数器count
加1,更新HashMap中该元素的出现次数,通过map.put(nums.get(i), map.getOrDefault(nums.get(i), 0) + 1)
实现,然后通过计数器返回结果。