知识点
LeetCode算法题
LeetCode算法题
复习
316.【去除重复字母】/1081.【不同字符的最小子序列】
解题思路:
首先梳理出题目要求:1、去重;2、不能打乱相对顺序;3、字典序最小
首先,利用栈完成要求1和2,然后配合int数组完成要求3
26.【删除有序数组中的重复项】
解题思路:
快慢指针,fast在前面探路,如果找到不和slow相同的元素,则slow向前一步,然后将不重复元素赋给slow,最后返回slow+1的长度。
27.【移除元素】
解题思路:
快慢指针,slow和fast从0开始,如果fast的元素不是val,就将fast的元素赋值给slow,然后slow前进,fast前进;如果fast的元素等于val,说明该元素需要去除,所以不赋值给slow,slow不动,fast继续前进。最后返回slow。
283.【移动零]
解题思路:
快慢指针,slow和fast从0开始,如果fast的元素不是0,就将fast的元素赋值给slow,然后slow前进,fast前进;如果fast的元素等于0,说明不需要赋值,slow不动,fast前进。最后将slow后的元素都赋值为0即可。