Java 题解 | #特工的密码#
特工的密码
https://www.nowcoder.com/practice/bcdfed09de534aea92b24c73699dba5c
import java.util.*;
public class Solution {
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param s string字符串
* @param t string字符串
* @return bool布尔型
*/
public boolean isSubsequence (String s, String t) {
// write code here
int sIndex = 0;
int tIndex = 0;
while (sIndex < s.length() && tIndex < t.length()) {
if (s.charAt(sIndex) == t.charAt(tIndex)) {
sIndex++;
}
tIndex++;
}
return sIndex == s.length();
}
}
编程语言是 Java。
该题考察的知识点是字符串操作和指针的使用。
代码的文字解释如下:
- 声明了两个整数变量
sIndex和tIndex,分别用于在字符串s和t上移动。 - 使用一个
while循环,条件是sIndex小于s的长度且tIndex小于t的长度。 - 在循环内部,比较字符
s.charAt(sIndex)和t.charAt(tIndex)是否相等。 - 如果相等,说明找到了
s中的一个字符,所以将sIndex向前移动。 - 无论是否相等,我们总是将
tIndex向前移动,因为我们需要在字符串t中继续寻找下一个可能匹配的字符。 - 检查是否
sIndex已经达到了字符串s的末尾,如果是,则返回true,表示s是t的子序列,否则返回false。
OPPO公司福利 1114人发布
查看15道真题和解析