这篇文章给大家分享的是如何判断子序列的内容,下文介绍了解题思路及方法,对大家学习C语言有一定的帮助,因此分享给大家做个参考,文中示例代码介绍的非常详细,感兴趣的朋友接下来一起跟随小编看看吧。
给定字符串 s 和 t ,判断 s 是否为 t 的子序列。
说明:
1.字符串的一个子序列是原始字符串删除一些(也可以不删除)字符而不改变剩余字符相对位置形成的新字符串。(例如,"ace" 是 "abcde" 的一个子序列,而 "aec" 不是)。
//提示 1. 0 <= s.length <= 100 2. 0 <= t.length <= 10^4 3. 两个字符串都只由小写字符组成。
实例1:
输入:s = "abc", t = "ahbgdc" 输出:true
实例2:
输入:s = "axc", t = "ahbgdc" 输出:false
解法思路:利用 sChar 指针遍历字符串 s ,tChar 指针遍历字符串 t ,然后如果 sChar 与 tChar 指向的字符相等,sChar和 tChar 都往后移,否则 tChar 往后移继续在字符串 t 中寻找,最后判断sChar 指针是否完成了对 s 字符串的遍历。
代码如下:
class Solution { public static boolean isSubsequence(String s, String t) { int sChar = 0 , tChar = 0; //sChar指针遍历字符串s,tChar指针遍历字符串t while (sChar < s.length() && tChar < t.length()){ if (s.charAt(sChar) == t.charAt(tChar)) //判断sChar与tChar指向的字符是否相等,相等时sChar和tChar都往后移,否则tChar往后移继续在字符串t中寻找 sChar ++; tChar++; } if (sChar == s.length()) //判断sChar指针是否完成了对s字符串的遍历 return true; else return false; } }
运行结果截图如下:
关于如何判断子序列的内容就介绍到这,上述示例具有一定的借鉴价值,感兴趣的朋友可以参考,希望能对大家有帮助,想要了解更多大家可以关注其它的相关文章。
文本转载自PHP中文网
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。