day-55 从字符串中移除星号
思路
因为删掉及其左边第一个字符,所以从右向左遍历,维护一个num的值,num表示还需要删掉多少个的左边第一个字符
解题过程
1.当前字符为时:num++;
2.当前字符不为时:2.1如果num>0,直接跳过当前字符;2.2如果num==0,将当前字符头插入需要返回的字符串
Code
class Solution {
public String removeStars(String s) {
String ans="";
int len=s.length();
int num=0;
for(int i=len-1;i>=0;i--){
if(s.charAt(i)=='*')num++;
else{
if(num==0){
ans=""+s.charAt(i)+ans;
}else{
num--;
}
}
}
return ans;
}
}
作者:菜卷
链接:https://leetcode.cn/problems/removing-stars-from-a-string/solutions/2916446/cong-zi-fu-chuan-zhong-yi-chu-xing-hao-b-9zau/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。