通常,在编码采访中我会遇到以下术语。
给出一个数组或字符串,找到 子阵列 子序列 子字符串
它们有什么区别? 例如,我看到可以将整数数组拆分为
n *(n + 1)/ 2
子数组。它们也成为子集吗?子数组应该连续吗? 为了计算字符串的子序列,为什么使用
2 ^ str_length-1
在线搜索后,我得到了这个链接 https://www.geeksforgeeks.org/subarraysubstring-vs-subsequence-and-programs-to-generate-them/
但是我仍然感到模棱两可,因为调用数组/字符串的一部分的通用术语是什么?以及如何计算它们?
答案 0 :(得分:1)
通常,数组和字符串都是子序列。 “顺序”部分表明元素的顺序在某种程度上很重要。 “子字符串”通常是连续的; “子阵列”和“子序列”不清楚。如果您正在求职面试中,而不是某种解释,那么您的第一份工作就是询问。有时,工作面试的一部分是确保您可以发现并解决歧义。
问题更新后更新
我发现所引用的页面非常清晰。 首先,请注意 string 和 array 都是序列的特定类型。
这可以解决您的问题吗?