草庐IT

改进灰狼优化算法

全部标签

c# - .NET “double” 算法是否独立于平台/体系结构?

如果我在Windows(x86和x64)下的.NET上运行涉及System.Double的复杂计算,然后在Mono(Linux、Unix等)上运行,绝对有保证以在所有情况下得到完全相同的结果,或者规范是否允许在计算中有一些回旋余地? 最佳答案 来自MSDNInaddition,thelossofprecisionthatresultsfromarithmetic,assignment,andparsingoperationswithDoublevaluesmaydifferbyplatform.Forexample,theresul

c# - 在优化使用时让 ReSharper 保留 'using System;'

我想知道是否有一些选项可以防止ReSharper仅删除usingSystem;指令?也许这可以在某处配置?另外,有没有办法让ReSharper像VisualStudio2008那样对剩余的指令进行排序(我认为是按字母顺序)?谢谢。 最佳答案 是的,有这么一个选项:ReSharper->Languages->C#->NamespaceImports。您可以添加不应删除的namespace,以及应始终导入的namespace。 关于c#-在优化使用时让ReSharper保留'usingSys

c# - 评估数学表达式的最佳算法?

评估数学表达式的最佳算法是什么?我希望能够稍微优化一下,因为我可能有一个包含各种变量的公式,我可能需要使用不同的变量对其进行数百次评估。所以基本上,如果我最初可以解析公式,以便以某种方式对其进行优化,然后我可以根据需要多次将变量传递给这个优化版本,每次它都会为我生成一个结果。我将使用Delphi或C#编写此代码。我已经使用调车场算法编写了类似的东西,但每次我需要计算相同的公式时,我都必须经过解析阶段。必须有更好的方法来做到这一点。 最佳答案 如果你想用Delphi来做,你可以看看JclExprEval单元是如何工作的,它是JEDIC

c# - 优化 C# 文件 IO

场景-150MB的文本文件,它是旧电子邮件帐户的导出收件箱。需要解析并提取来自特定用户的电子邮件,并将这些电子邮件写入一个新的单个文件。我有可用的代码,它只是太慢了。我正在使用标记字符串来搜索从原始文件开始/结束副本的位置。这是主要功能:StreamReadersr=newStreamReader("c:\\Thunderbird_Inbox.txt");stringworking=string.Empty;stringmystring=string.Empty;while(!sr.EndOfStream){while((mystring=sr.ReadLine())!=null){i

c# - 源代码控制系统的算法?

我需要编写一个简单的源代码控制系统,想知道我将使用什么算法来处理文件差异?出于许可方面的考虑,我不想查看现有的源代码。我需要根据MPL获得它的许可,所以我无法查看任何现有系统,例如CVS或Mercurial,因为它们都是GPL许可的。只是为了提供一些背景知识,我只需要一些非常简单的函数-文件夹中的二进制文件。没有子文件夹,每个文件的行为都像它自己的存储库。除了一些权限外没有元数据。总的来说非常简单,我真正关心的是如何只存储一个文件在不同版本之间的差异,而不会浪费太多空间,而且效率也不会太低(也许每次X更改都存储一个完整版本,有点像视频中的关键帧?) 最佳答案

c# - 强制 .NET JIT 编译器在应用程序启动期间生成最优化的代码

我正在用C#编写一个DSP应用程序(基本上是一个多轨编辑器)。我已经在不同的机器上对它进行了很长一段时间的分析,我注意到了一些“奇怪”的事情。在我的家用机器上,播放循环的第一次运行占用了大约50%-60%的可用时间(我假设这是由于JIT完成它的工作),然后对于后续循环,它下降到稳定的5%消耗。问题是,如果我在较慢的计算机上运行该应用程序,第一次运行会占用比可用时间更多的时间,导致播放中断并弄乱输出音频,这是NotAcceptable。之后,它会下降到8%-10%的消耗。即使在第一次运行后,应用程序仍然不时调用一些耗时的例程(大约每2秒一次),这导致稳定的5%消耗经历了20%-25%的非

c# - 算法:最大计数器

我有以下问题:你有N个计数器,初始设置为0,你可以对它们进行两种可能的操作:increase(X)-计数器X增加1,max_counter-所有计数器都设置为任何计数器的最大值。给出了一个由M个整数组成的非空零索引数组A。这个数组代表连续的操作:如果A[K]=X,使得1≤X≤N,则操作K为increase(X),如果A[K]=N+1则操作K是max_counter。例如,给定整数N=5和数组A使得:A[0]=3A[1]=4A[2]=4A[3]=6A[4]=1A[5]=4A[6]=4每次连续操作后计数器的值将是:(0,0,1,0,0)(0,0,1,1,0)(0,0,1,2,0)(2,2,

字节跳动抖音推荐算法实习生一面凉经

面试大概50分钟本来投的是头条开发岗位,不知为何被捞到了推荐算法岗位。多位推荐算法hr一直约我面试,说经历和他们部门契合。我从年底推到年后,最后答应面试,这也是读研以来第一次面试。大概是自己准备不充分,一面就凉凉了,留下一次不好的经历。面试完差不多下午三点了,当时在想下午五点不通知二面应该就是凉凉了,然而五点之前真没收到通知。第二天中午的时候收到了感谢信,果然是凉凉了。唉,连找个实习都这么难。下面是整个面试流程1、2分钟自我介绍。2、本人大四期间在某小公司实习的项目,项目是简单的机器学习项目。问数据怎么获取?东方财富网上爬取公开的财务数据,接口都是公开的,简单的get和post请求。数据标签怎

c# - 什么是适用于 2D 点结构的 `GetHashCode()` 算法(避免冲突)

考虑以下代码:structVec2:IEquatable{doubleX,Y;publicboolEquals(Vec2other){returnX.Equals(other.X)&&Y.Equals(other.Y);}publicoverrideboolEquals(objectobj){if(objisVec2){returnEquals((Vec2)obj);}returnfalse;}//thiswillreturnthesamevaluewhenX,YareswappedpublicoverrideintGetHashCode(){returnX.GetHashCode()

c# - 如何在 C# 中优化枚举赋值

我有这个枚举enumNetopScriptGeneratingCases{AddLogMessages,AddLogErrors,AddLogJournal,AllLog=AddLogMessages|AddLogErrors|AddLogJournal,DoNothing}并且有一个带有3个复选框的UI,所以根据选中的复选框,我必须生成可能的案例来完成一些工作。NetopScriptGeneratingCasesnetopScriptGeneratingCases=NetopScriptGeneratingCases.DoNothing;if(checkBoxAddAuditLog.