我有一个整数列表(1、1、1、2、2、3、3、4、5、5、6)。我想遍历此列表并计算每个double int。
所以这意味着我有2个新变量
int =列表计数
int =最高计数
我要计算1,然后将结果放入“ listcount”。
如果listcount>最高计数
listcount =最高计数
(重置列表计数)
然后检查“ 2”的行并执行相同的操作。将其放在listcount中,并检查2的计数是否高于最高计数。没有Linq,这可能吗?
编辑: 我想获取列表中出现次数最多的整数。
List<int> modeList = new List<int>();
int highestcount = 0;
int listcount = 0;
foreach (var item in modelist)
{
if (true)
{
listcount > highestcount
listcount = highestcount;
}
}
我做了一些简单的代码,让所有人都印象深刻
答案 0 :(得分:2)
使用numberOfItems = 3
获取一个数字的最大出现次数可以是:
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
let width = min((collectionView.bounds.height) * CGFloat((numberOfItems-1)/2 + 1), UIScreen.main.bounds.width)
self.collectionViewWidthConstraint.constant = width
}
没有LINQ:
LINQ
答案 1 :(得分:0)
类似的事情可能会起作用:
List<int> numbersList = new List<int> { 1, 1, 1, 2, 2, 3, 3, 4, 5, 5, 6 };
int previousNumber = numbersList[0];
int countingRepetition = 0;
int highestcount = 0;
int theNumber = 0;
foreach (var number in numbersList)
{
if (previousNumber == number)
{
countingRepetition++;
if (countingRepetition >= highestcount)
{
highestcount = countingRepetition;
theNumber = number;
}
}
else
{
previousNumber = number;
countingRepetition = 0;
}
}