lc26 删除有序数组中的重复项
一句话描述问题:一个含重复项的有序数组,返回元素个数为1的元素
一句话题解:快慢指针。有序数组,重复元素相邻,快指针遍历,前后元素不等时,将后元素赋给慢指针对应的元素。解题过程未创建新数组,最后更新后的数组,前半部分是不重复的元素,后半部分不变。
注意点:不涉及新的API方法,正常的循环+判断。
没看答案前的思路
将数组中的元素及对应个数放到一个map中,
找map中个数为1的元素,并把这些元素放到新的数组中,返回新数组的个数
涉及api:
map.containsKey();
map.getValue();
map.put()
Map.Entry<Integer,Integer>
map.entrySet()
entry.getValue()
entry.getKey()
ArrayList.add()
ArrayList.size()
.equals()