【字符串】925. 长按键入

题目:

 

 

 

解答:

 1 class Solution {
 2 public:
 3     bool isLongPressedName(string name, string typed) 
 4     {
 5         int indexN = 0;
 6         int indexT = 0;
 7 
 8         // 或的原因是防止typed后面的字母不等于那么最后一个字母
 9         while(indexN < name.size() || indexT < typed.size())
10         {
11             
12             if(indexN < name.size() && name[indexN] == typed[indexT])
13             {
14                 //当name没有匹配完时,前面的判断都是成立的
15                 indexT++;
16                 indexN++;
17             }
18             else
19             {
20                 if(indexN > 0 && name[indexN-1] == typed[indexT])
21                 {   
22                     //这里indexN>0是因为考虑避开name[0] != typed[0]的特殊情况
23                     indexT++;
24                 }
25                 else
26                 {
27                     return false;
28                 }
29             }
30         }
31         return true;
32     }
33 };

 

posted @ 2020-05-03 22:45  梦醒潇湘  阅读(165)  评论(0)    收藏  举报