首页 > 其他 > 详细

最长无的重复子串的长度

时间:2021-04-09 00:05:14      阅读:28      评论:0      收藏:0      [点我收藏+]

题目描述

给定一个数组arr,返回arr的最长无的重复子串的长度(无重复指的是所有数字都不相同)。

备注:1 <= n <= 105

使用空间换时间

int maxLength(vector<int>& arr)
{
    int size = arr.size();
    int check[1000000] = { 0 };
    int left = 0;
    int right = 0;
    int max = 1;
    for (left = 0; left < size; left++)
    {
        memset(check, 0, sizeof(check));
        check[arr[left]] = 1;

        right = left + 1;
        while (right < size)
        {
            if (check[arr[right]] == 0)
            {
                int len = right - left + 1;
                max = max > len ? max : len;
                check[arr[right]] = 1;
            }
            else
            {
                break;
            }
            right++;
        }
    }

    //cout << max << endl;
    return max;
}

 

最长无的重复子串的长度

原文:https://www.cnblogs.com/weiyouqing/p/14634937.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!