在Python中查找具有唯一元素的最长连续子列表的长度的程序
假设我们有一个名为nums的数字列表,其中所有元素都是唯一的。我们必须找到包含连续元素的最长子列表的长度。
所以,如果输入像nums=[3,6,7,5,4,9],那么输出将是5,因为子列表是[3,6,7,5,4]这包含所有连续的元素从3到7。
示例
让我们看看以下实现以获得更好的理解-
def solve(nums): ret = 0 for i in range(len(nums)): lhs = nums[i] rhs = nums[i] for j in range(i, len(nums)): lhs = min(lhs, nums[j]) rhs = max(rhs, nums[j]) if rhs - lhs == j - i: ret = max(ret, j - i + 1) return ret nums = [3, 6, 7, 5, 4, 9] print(solve(nums))
输入
[3, 6, 7, 5, 4, 9]输出结果
1