题目描述:
给你两串字母
只要第二串字母满足在第一串字母的基础上构成即可(有的字母可能按了多次不影响顺序就行)
思路:
双指针
若第二串字母符合条件,那它所拥有的的字母无非就两种情况
,第一种是和第一串里面的字母匹配,第二种是和它前面的
一个字符匹配。
设置指针i,j,若所指内容相同,则都加加判断,若不同,则判断j所指和j-1是否相同,然后只有j++;若不同直接返回false。
代码:
class Solution {
public boolean isLongPressedName(String name, String typed) {
// char[] a = name.toCharArray();
// char[] b = typed.toCharArray();
int i=0,j=0;
while(j<typed.length())
{
if(i<name.length() &&name.charAt(i) == typed.charAt(j))
{
i++;
j++;
}else if(j>0&&typed.charAt(j-1)==typed.charAt(j))
{
j++;
}
else{
return false;
}
}
return i==name.length();
}
}
03-04
11-12