返回题库|

最长等差数列

中等腾讯

最长等差数列

中等腾讯动态规划

题目描述

给你一个整数数组 nums,返回 nums 中最长等差子序列的长度。回想一下,nums 的子序列是一个列表 nums[i1], nums[i2], ..., nums[ik],其中 0 <= i1 < i2 < ... < ik <= nums.length - 1,并且序列中相邻元素的差值相同。使用动态规划,dp[i][d] 表示以 nums[i] 结尾、公差为 d 的最长等差子序列长度,用哈希表存储每个位置的公差映射。

示例

输入:nums = [3, 6, 9, 12]
输出:4
solution.ts
输出结果
点击「运行代码」按钮查看结果...