题解 | #特工的密码#
特工的密码
https://www.nowcoder.com/practice/bcdfed09de534aea92b24c73699dba5c
知识点:字符串
思路:
- 首先,我们获取字符串
s
和t
的长度,分别为n
和m
。 - 然后,我们使用两个指针
i
和j
来遍历字符串s
和t
。 - 在循环中,我们比较
s.charAt(i)
和t.charAt(j)
的值。如果两个字符不相等,我们将j
向后移动一位,继续比较下一个字符。 - 如果在遍历
t
的过程中,我们遇到了末尾字符但是s
的字符还没有全部匹配完,则返回false
,因为字符串t
不可能包含完整的字符串s
。 - 如果我们成功遍历完字符串
s
的所有字符,返回true
表示s
是t
的子序列。
编程语言:java
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param s string字符串 * @param t string字符串 * @return bool布尔型 */ public boolean isSubsequence(String s, String t) { int n = s.length(); int m = t.length(); int j = 0; for (int i = 0; i < n; i++) { while (j < m && s.charAt(i) != t.charAt(j)) { j++; } if (j == m) { return false; } j++; } return true; } }