- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我最近遇到了这行代码,它的作用是遍历一个数组并返回最常出现的值。例如 1,1,2,1,3,所以它会返回 1,因为它出现的次数超过 2 和 3。我想做的是了解它是如何工作的,所以我所做的是通过 visual studio 逐步完成它一步,但它没有响铃。
谁能帮我理解这里发生了什么?如果有人能告诉我 c 做了什么以及 if 语句中参数背后的逻辑是什么,那将是一个总的加分。
int[] arr = a;
int c = 1, maxcount = 1, maxvalue = 0;
int result = 0;
for (int i = 0; i < arr.Length; i++)
{
maxvalue = arr[i];
for (int j = 0; j <arr.Length; j++)
{
if (maxvalue == arr[j] && j != i)
{
c++;
if (c > maxcount)
{
maxcount = c;
result = arr[i];
}
}
else
{
c=1;
}
}
}
return result;
最佳答案
编辑:经过仔细检查,代码片段有一个嵌套循环,并且通常通过简单地跟踪最大可见时间和所见元素并使它们保持同步来计算最大可见元素。
这看起来像是 Boyer-Moore 多数票计数算法的实现。他们有一个很好的插图here .
逻辑很简单,单次通过计算多数,花费 O(n) 时间。请注意,这里的 majority 表示 超过 50% 的数组必须用该元素填充。如果没有多数元素,则会得到“不正确”的结果。
通常在单独的传递中验证元素是否真正形成多数。
关于c# - 计算最频繁的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28976734/
我有一个包含值的字符串数组(duh...)。 有没有一种简单的方法可以获取出现次数最多的条目?有点像 values[37].getMostOften(); 干杯:) 最佳答案 您可以使用GroupBy
我目前正在将一款用 C#(适用于 Windows Phone)开发的游戏移植到 Java (Android)。 我们在 Java 版本中遇到了内存问题,在分析之后,似乎是由于内存中的大量 String
对于播放音频文件的 iPhone 应用程序,我正在开发一个系统来跟踪用户在他们听过的任何一集中的进度(例如,他们听 file1 的前 4:35,然后开始另一个文件,然后返回到文件 1,它从 4:35
如果您按下 UIbutton 显示 UITextView,将请求代码 Ì 再次按下 UIbutton 再次显示 UITextView :/ 最佳答案 .h 文件中只有一个 int 变量,如下所示..
我在 Application_End 上处理的项目中使用临时数据库: protected void Application_End() { if (_db != null) _db.Dispo
我是一名优秀的程序员,十分优秀!