ac_2816判断子序列
题目描述
题目大意&链接
给定 a,b 两个子序列,判断 a 序列是否是 b 序列的子序列,是:Yes,否:No。
输入输出样例:
输入:
3 5
1 3 5
1 2 3 4 5
输出:
Yes
详情:ac_2816判断子序列
解题思路
这题采用双指针的思想,可以参考ac_800数组元素的目标和:
- 定义 i,j 指针分别指向 a,b 序列的左端点,j一直右移循环遍历,若 a[i] == b[j] 则 i++ ,当 i==n 时则 a 是 b 的子序列:
int i = 0, j = 0;
while(i < n && j < m)
{
if(a[i] == b[j]) i++;
j++;
}
完整代码
|
时间和空间复杂度
时间复杂度:O(n + m)
空间复杂度:O(n + m)
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 ZW_Blog!