题目:给定字符串 s 和 t ,判断 s 是否为 t 的子序列。
字符串的一个子序列是原始字符串删除一些(也可以不删除)字符而不改变剩余字符相对位置形成的新字符串。(例如,"ace"是"abcde"的一个子序列,而"aec"不是)。
示例 1:
输入:s = “abc”, t = “ahbgdc”
输出:true
示例 2:
输入:s = “axc”, t = “ahbgdc”
输出:false
思路:这道题两个点:子序列、相对位置。要判断是否是子序列,这里有个方法indexOf(char,index),
此方法能够保证在遍历判断s的字符数组的时候,是否是t的子串,同时还可以保证相对位置的正确。
这个方法秒啊
public boolean isSubsequence(String s, String t) {
int index =-1;
for(char c:s.toCharArray()){
index = t.indexOf(c,++index);
if(index == -1) return false;
}
return true;
}