我是靠谱客的博主 拼搏鲜花,最近开发中收集的这篇文章主要介绍有100万个数字(1到9),其中只有1个数字重复2次,如何快速找出该数字,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

有100万个数字(1到9),其中只有1个数字重复2次,如何快速找出该数字

rt, C# codes as below:

using System;

using System.Collections.Generic;

namespace ConsoleApp

{

class Program

{

static void Main(string[] args)

{

List<int> list = new List<int>();

for (int i = 1; i < 10; i++)

{

for (int j = 0; j < i; j++)

{

list.Add(i);

}

list.Add(1);

list.Add(1);

}

Console.WriteLine(GetNum(list));

Console.ReadKey();

}

static int GetNum(List<int> listNums)

{

bool[] ifRemoved = new bool[9];

int[] counterTimes = new int[9];

int movedNum = 0;

foreach (int i in listNums)

{

if (i <= 0 || i > 9)

throw new System.FormatException(string.Format("Unexpected num value {0}!", i));

if (ifRemoved[i - 1] == false)

{

counterTimes[i - 1]++;

if (counterTimes[i - 1] > 2)

{

ifRemoved[i - 1] = true;

movedNum++;

if (movedNum == 8)

{

for (int j = 0; j < 9; j++)

{

if (ifRemoved[j] == false)

return j + 1;

}

}

}

}

}

for (int j = 0; j < 9; j++)

{

if (counterTimes[j] == 2)

return j + 1;

}

throw new System.ArgumentException("There is no suitable num in the param array!");

}

}

}

最后

以上就是拼搏鲜花为你收集整理的有100万个数字(1到9),其中只有1个数字重复2次,如何快速找出该数字的全部内容,希望文章能够帮你解决有100万个数字(1到9),其中只有1个数字重复2次,如何快速找出该数字所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(56)

评论列表共有 0 条评论

立即
投稿
返回
顶部