mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-11 04:54:51 +08:00
增加925.长键按入 JavaScript版本
This commit is contained in:
@ -182,6 +182,34 @@ func isLongPressedName(name string, typed string) bool {
|
|||||||
```
|
```
|
||||||
|
|
||||||
JavaScript:
|
JavaScript:
|
||||||
|
```javascript
|
||||||
|
var isLongPressedName = function(name, typed) {
|
||||||
|
let i = 0, j = 0;
|
||||||
|
const m = name.length, n = typed.length;
|
||||||
|
while(i < m && j < n){
|
||||||
|
if(name[i] === typed[j]){ // 相同则同时向后匹配
|
||||||
|
i++; j++;
|
||||||
|
} else {
|
||||||
|
if(j === 0) return false; // 如果是第一位就不相同直接返回false
|
||||||
|
// 判断边界为n-1,若为n会越界,例如name:"kikcxmvzi" typed:"kiikcxxmmvvzzz"
|
||||||
|
while(j < n - 1 && typed[j] === typed[j-1]) j++;
|
||||||
|
if(name[i] === typed[j]){ // j跨越重复项之后再次和name[i]匹配,相同则同时向后匹配
|
||||||
|
i++; j++;
|
||||||
|
} else {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 说明name没有匹配完 例如 name:"pyplrzzzzdsfa" type:"ppyypllr"
|
||||||
|
if(i < m) return false;
|
||||||
|
// 说明type没有匹配完 例如 name:"alex" type:"alexxrrrrssda"
|
||||||
|
while(j < n) {
|
||||||
|
if(typed[j] === typed[j-1]) j++;
|
||||||
|
else return false;
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
};
|
||||||
|
```
|
||||||
|
|
||||||
-----------------------
|
-----------------------
|
||||||
* 作者微信:[程序员Carl](https://mp.weixin.qq.com/s/b66DFkOp8OOxdZC_xLZxfw)
|
* 作者微信:[程序员Carl](https://mp.weixin.qq.com/s/b66DFkOp8OOxdZC_xLZxfw)
|
||||||
|
Reference in New Issue
Block a user