美文网首页
C# 连续数字最大连续个数

C# 连续数字最大连续个数

作者: Rinaloving | 来源:发表于2022-02-10 18:57 被阅读0次

需求

[ 1, 2, 3, 4 .... n ] 连续数字中,没有断连的最大长度
        int[] arr = { 1, 2, 3, 5, 6, 7, 9, 10, 11, 15, 16, 17, 18, 19, 21, 22, 23, 24 };

        public static int ContinueNumLenth(int[] array)
        {
            int value = array[0], tempvalue=0, maxvalue = 0;
            int count = 1, pos = 0;
            int len = 0;
            for (int i = 0; i < array.Length; i++)
            {
                len = len < array.Length ? pos + 1 : pos;
                if (++pos < array.Length && array[len] == value + 1)
                {
                    value = array[pos];
                    count++;
                    tempvalue = count;
                }
                else
                {
                    if (maxvalue < tempvalue)
                    {
                        maxvalue = tempvalue;
                    }
                    if (pos < array.Length)
                    {
                        value = array[pos];
                        count = 1;
                    }
                }
            }
            return maxvalue;
        }

获取数组中 1 连续出现的最大次数
        int[] arr = { 0, 0, 1, 1, 1, 0 ,0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1 };

        public int GetOneContinueNum(int[] array)
        {
            int value = array[0], maxvalue = 0, maxcount = 0;
            int count = 1, pos = 0;
            while (true)
            {
                while (++pos < array.Length && array[pos] == 1) count++;
                if (count > maxcount) { maxcount = count; maxvalue = value; }
                if (pos < array.Length)
                {
                    value = array[pos];
                    count = 1;
                }
                else break;
            }
            return maxcount - 1;
        }

最多连续出现数字的次数
        int[] arr = { 0, 0, 1, 1, 1, 0 ,0, 0, 2, 2, 2, 6, 6, 6, 6, 0, 0, 1 };

        public static void check(int[] array)
        {
            int value = array[0], maxvalue = 0, maxcount = 0;
            int count = 1, pos = 0;
            while (true)
            {
                    while (++pos < array.Length && array[pos] == value) count++;
                    if (count > maxcount) { maxcount = count; maxvalue = value; }
                    if (pos < array.Length)
                    {
                        value = array[pos];
                        count = 1;
                    }
                    else break;
                
            }
            Console.WriteLine("最多连续出现数字为{0},次数{1}", maxvalue, maxcount);
        }

相关文章

  • C# 连续数字最大连续个数

    需求 [ 1, 2, 3, 4 .... n ] 连续数字中,没有断连的最大长度 获取数组中 1 连续出现的最大次...

  • A1096 Consecutive Factors (20分)

    /*题意:1、找出连续的因子,最多的个数,然后因子大小要最小输入:输入一个数字,最大是int的最大输出:输出连续依...

  • [LeetCode][Python]485. 最大连续1的个数

    [LeetCode][Python]485. 最大连续1的个数 给定一个二进制数组, 计算其中最大连续1的个数。 ...

  • Leetcode.198.House Robber

    题目 给定一个数组, 不能取连续两个相邻的数字, 求最大可以取多少数字. 思路 DP, 对于第一个数字, 如果取第...

  • [剑指offer]刷题笔记

    连续子数组的最大和(常见✔) 最小的k个数 数组中出现次数超过一半的数字 数据流中的中位数(难♧) 连续子数组的最...

  • [python] 最大连续子序数之和

    问题:连续子序列最大和给定一个数字序列[A1A2A3…An],求i,j(1<=i<=j<=n)使得Ai…Aj和最大...

  • LeetCode-485-最大连续 1 的个数

    最大连续 1 的个数 题目描述:给定一个二进制数组, 计算其中最大连续 1 的个数。示例说明请见LeetCode官...

  • 2019-01-14 Day 9

    1.最大连续1的个数来源LeetCode 给定一个二进制数组, 计算其中最大连续1的个数。 示例 1: 输入: [...

  • 欧拉计划8 (连续数字最大乘积)

    题目: 在下面这个1000位正整数中,连续4个数字的最大乘积是 9 × 9 × 8 × 9 = 5832。 731...

  • 485-最大连续1的个数

    最大连续1的个数 题目 给定一个二进制数组, 计算其中最大连续1的个数。 示例 1: 输入: [1,1,0,1,1...

网友评论

      本文标题:C# 连续数字最大连续个数

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