Java-LeetCode925. 长按键入-双指针

  • 算法
    • 1.双指针遍历,name指针和typed指针分别从两个字符串的第一个字符开始遍历,终止遍历的条件是typed指针遍历结束
    • 2.当name的指针没有遍历结束时,比较两指针的字符是否相等
      • 2.1如果相等,都加1移到下一个字符
      • 2.2如果不相等,再看typed的指针是否是长按导致的重复字符,如果是就移到下一个字符,如果不是就返回false
    • ps:代码优化精简
public boolean isLongPressedName(String name, String typed) {
    int i = 0;
    for (int j = 0; j < typed.length(); j++) {
        if (i < name.length() && name.charAt(i) == typed.charAt(j)) {
            i++;
        } else if (j == 0 || typed.charAt(j) != typed.charAt(j-1)) {
            return false;
        }
    }
    return i == name.length();
}
全部评论

相关推荐

Natrium_:这时间我以为飞机票
点赞 评论 收藏
分享
躺尸修仙中:因为很多92的也去卷中小厂,反正投递简历不要钱,面试不要钱,时间冲突就推,不冲突就面试积累经验
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务