双指针 O(n) AC
思路:
子序列A (指针j)
目标序列B (指针i)
判断子序列是否存在于目标序列中
故使用两个指针去移动判断
当A[j] != B[i],i
当A[j] = B[i],j, i++ 去判断下一个字符是否相等
结束条件 j == A.length || i == B.length
返回值:当 j == A.length,返回Yes; 否则返回No
private String solve(int[] a, int[] b) {
int n = a.length, m = b.length;
int i = 0, j = 0;
for (; i < m; i++) {
if (j == n) break;
if (a[j] == b[i]) j++;
}
return j == n ? "Yes" : "No";
}