美文网首页
565. 数组嵌套

565. 数组嵌套

作者: Pagliacci_Joker | 来源:发表于2019-04-08 19:51 被阅读0次

思路:

想象a[i]与a[a[i]]有一条a[i]指向a[a[i]]的指针,即求多个环内的最大环大小

注意:

代码:

class Solution {
public:
    int arrayNesting(vector<int> &nums) {
        set<int> sercleset;
        int flag[nums.size() + 5];//表示第i个数已经被访问
        memset(flag, 0, sizeof(flag));
        int max = -1;
        int cnt = 0;
        for (int i = 0; i < nums.size(); i++) {
            if (flag[i] == 0) {
                cnt = 1;
                flag[i] = 1;
                int temp = nums[i];
                while (flag[temp] == 0) {
                    cnt++;
                    flag[temp] = 1;
                    temp = nums[temp];
                }
                if (cnt > max) {
                    max = cnt;
                }
            }
        }
        return max;


    }
};

相关文章

  • LeetCode 565. 数组嵌套

    .LeetCode 565. 数组嵌套 索引从0开始长度为N的数组A,包含0到N - 1的所有整数。找到并返回最大...

  • 565. 数组嵌套

    思路: 想象a[i]与a[a[i]]有一条a[i]指向a[a[i]]的指针,即求多个环内的最大环大小 注意: 无 代码:

  • LeetCode 565. Array Nesting(数组嵌套

    索引从0开始长度为N的数组A,包含0到N - 1的所有整数。找到并返回最大的集合S,S[i] = {A[i], A...

  • 01-JS-04

    数组 字面量 var arr=[ ];[ 二维数组 ]数组里面再嵌套一个数组 [ 多维数组 ]数组里面嵌套多个数组...

  • js 数组扁平化实现的多种方法

    方法① 效果:不管数组嵌套多少层,都转化为一维数组。 方法② 效果:不管数组嵌套多少层,都转化为一维数组。 方法③...

  • 每日一题

    20170830 数组扁平化: 实现一个flatten函数,将一个嵌套多层的数组 array(数组) (嵌套可以是...

  • angular2foreach遍历的几种用法

    遍历简单的数组 遍历数组对象 遍历嵌套数组

  • flatten,map,reduce方法总结

    (1)flatten的用法 将一个嵌套多层的数组 array(数组) (嵌套可以是任何层数)转换为只有一层的数组,...

  • 数组@嵌套

    什么是数组 内存中一段储蓄空间 多个变量的集合 数组的格式:var arr=[];(这是一个空数组) 或var a...

  • mongo 数据库操作

    嵌套数组里的成员操作 删除嵌套数组里的成员数据 数据源: {"_id" : "777","someKey" : "...

网友评论

      本文标题:565. 数组嵌套

      本文链接:https://www.haomeiwen.com/subject/vezpiqtx.html