每日一题——长键输入

it2024-08-09  41

题目描述: 给你两串字母 只要第二串字母满足在第一串字母的基础上构成即可(有的字母可能按了多次不影响顺序就行) 思路: 双指针 若第二串字母符合条件,那它所拥有的的字母无非就两种情况 ,第一种是和第一串里面的字母匹配,第二种是和它前面的 一个字符匹配。 设置指针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(); } }
最新回复(0)