题解 | #数组中的最长连续子序列#

数组中的最长连续子序列

https://www.nowcoder.com/practice/eac1c953170243338f941959146ac4bf

class Solution {
public:
    /**
     * max increasing subsequence
     * @param arr int整型vector the array
     * @return int整型
     */
    int MLS(vector<int>& arr) {
        sort(arr.begin(), arr.end());
        int nowlen = 1, now = arr[0];
        int res = 1;
        for (int i = 1; i < arr.size(); ++i) {
            if (arr[i] == now + 1) {
                ++nowlen;
                now = arr[i];
                res = max(res, nowlen);
            } else if (arr[i] != now) {
                nowlen = 1;
                now = arr[i];
            }
        }
        return res;
    }
};

思路:先排序,然后模拟构造最长连续子序列。

全部评论

相关推荐

06-12 10:50
门头沟学院 Java
你的不定积分没加C:我怎么在学院群看到了同样的话
点赞 评论 收藏
分享
06-27 18:45
中山大学 Ruby
25届应届毕业生,来广州2个礼拜了,找不到工作,绝望了,太难过了…
应届想染班味:9爷找不到工作只能说明,太摆了或者太挑了。
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务