【力扣每日一题】925. 长按键入

简介: 【力扣每日一题】925. 长按键入

1. 题目描述

2. 题目分析

  • 可恶的模拟题~
  • 使用两个指针,一个指针l1指向name,一个指针l2指向typed
  • 如果当前的name[l1]与typed[l2]相等,则l1++/l2++,如果不相等的话,则判断typed[l2]是否等于typed[l2-1],不相等直接但会false
  • 最后判断下当前的l1是不是等于name,length,验证一下l1是否完全匹配完整

3. 题目代码

public static bool IsLongPressedName(string name, string typed)
        {
            int l1 = 0;
            int l2 = 0;
            while (l2 < typed.Length)
            {
                if (l1 < name.Length && name[l1] == typed[l2])
                {
                    l1++;
                    l2++;
                }
                else
                {
                    if (l2 > 0 && typed[l2 - 1] == typed[l2])
                    {
                        l2++;
                    }
                    else
                    {
                        return false;
                    }
                }
            }
            return l1 == name.Length;
        }

感想

  • 不得不说,这个题目很恶心~~~
  • 好几天没刷力扣了,自从拿到offer就开始放弃努力了
  • 要开始进入工作模式了,每天的力扣一题要刷起来了


相关文章
|
11天前
力扣每日一题 6/2
力扣每日一题 6/2
10 3
|
11天前
力扣每日一题 6/3
力扣每日一题 6/3
13 3
|
11天前
力扣每日一题 5/27
力扣每日一题 5/27
13 2
|
1月前
leetcode-925:长按键入
leetcode-925:长按键入
22 0
|
8月前
|
存储 Java
力扣-每日一题
给你一个 32 位的有符号整数 x ,返回 x 中每位上的数字反转后的结果。 如果反转后整数超过 32 位的有符号整数的范围 [−231, 231 − 1] ,就返回 0。 假设环境
35 0
|
10月前
|
算法 C语言 C++
【双指针问题】LeetCode 925. 长按键入
你的朋友正在使用键盘输入他的名字 name。偶尔,在键入字符 c 时,按键可能会被长按,而字符可能被输入 1 次或多次。
33 0
leetcode 925 长按键入
leetcode 925 长按键入
61 0
|
存储 算法 Java
代码随想录刷题|LeetCode 332.重新安排行程 51. N皇后 37. 解数独
代码随想录刷题|LeetCode 332.重新安排行程 51. N皇后 37. 解数独
代码随想录刷题|LeetCode 332.重新安排行程 51. N皇后 37. 解数独
刷leetcode-比较含退格的字符串 | 刷题打卡
刷leetcode-比较含退格的字符串 | 刷题打卡
38 0

热门文章

最新文章