Ai
1 Star 0 Fork 0

徐长贺/Leetcode

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
_392.java 1.51 KB
一键复制 编辑 原始数据 按行查看 历史
Fisher Coder 提交于 2019-02-26 23:19 +08:00 . refactor 392
package com.fishercoder.solutions;
/**
* 392. Is Subsequence
*
* Given a string s and a string t, check if s is subsequence of t.
You may assume that there is only lower case English letters in both s and t. t is potentially a very long (length ~= 500,000) string, and s is a short string (<=100).
A subsequence of a string is a new string which is formed from the original string by deleting some (can be none) of the characters without disturbing the relative positions of the remaining characters. (ie, "ace" is a subsequence of "abcde" while "aec" is not).
Example 1:
s = "abc", t = "ahbgdc"
Return true.
Example 2:
s = "axc", t = "ahbgdc"
Return false.
Follow up:
If there are lots of incoming S, say S1, S2, ... , Sk where k >= 1B, and you want to check one by one to see if T has its subsequence. In this scenario, how would you change your code?
*/
public class _392 {
public static class Solution1 {
public boolean isSubsequence(String s, String t) {
int left = 0;
for (int i = 0; i < s.length(); i++) {
boolean foundI = false;
int j = left;
for (; j < t.length(); j++) {
if (s.charAt(i) == t.charAt(j)) {
left = j + 1;
foundI = true;
break;
}
}
if (j == t.length() && !foundI) {
return false;
}
}
return true;
}
}
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/isulong/Leetcode.git
git@gitee.com:isulong/Leetcode.git
isulong
Leetcode
Leetcode
master

搜索帮助