草庐IT

Transformer算法完全解读

全部标签

c# - c#中字符串比较的更快算法

我有两个句子需要相互比较。最终结果是一个句子在另一个句子中包含多少百分比,我的问题是我有100.000条记录需要与另外10条记录进行比较。那是1.000.000次循环,这在我的算法中非常慢。这是我正在使用的算法:privatedoubleBreakStringsAndCheck(strings1,strings2){if(s1==null||s2==null||s1.Length==0||s2.Length==0)return(double)0;string[]firstArray=s1.Split('');string[]secondArray=s2.Split('');if(fir

c# - 使用 Dijkstra 算法寻找最短路线

我需要找到图的2个顶点之间的最短路线。我有一个矩阵,其中包含所有权重。我该怎么做?目前,我有以下代码:privateint[]Dijkstra(intstart,intend){bool[]done=newbool[8];int[]parent=newint[8];for(inti=0;i它有效,但是,但是我不知道如何让它找到例如1和3之间的最短路线,并返回1=>4=>2=>3之类的路线。提前致谢。 最佳答案 Djikstra算法使用父数组来跟踪从开始到结束的最短路径。您将从parent[end]开始并跟随数组的条目,直到您回到起点

从学龄前开始解读FFMPEG代码 之 avformat_find_stream_info函数四

从学龄前开始解读FFMPEG代码之avformat_find_stream_info函数四开始学习前想说的话函数实现6-计算时间相关参数函数实现7-第五次循环函数实现8-第六次循环函数实现9-err的情况和收尾工作结尾时要说的话开始学习前想说的话这是avformat_find_stream_info函数解读文章的最后一篇,在最后这一篇解读文章中会对最后的两次大循环进行解读。最后的两次循环,是为了findstream这样一个操作做好兜底的准备,将没有做好初始化的属性最后进行一次检查和补充,完成函数的全部任务。函数实现6-计算时间相关参数在进入第五次循环之前,findstream函数还进行了一个时

c# - Principal Role App 引用的属性必须与 EntityType 的键完全相同

我首先使用EFDB。我做了一个观点。将其映射到EF。现在我得到以下错误:Error2Error111:PropertiesreferredbythePrincipalRoleAppmustbeexactlyidenticaltothekeyoftheEntityTypeMaMDBModel.AppreferredtobythePrincipalRoleintherelationshipconstraintforRelationshipMaMDBModel.FK_AppsData_App.MakesureallthekeypropertiesarespecifiedinthePrinci

c# - .NET框架实现了什么排序算法

这个问题在这里已经有了答案:Whichsortingalgorithmisusedby.netinIComparer(3个答案)关闭9年前。在.NET中实现IComparable之类的东西时,有人可以建议.NET使用什么排序算法对基础数据进行实际排序吗?所使用的算法是可定制的还是可选的?

c# - 使用十六进制更改 Excel 单元格的背景色会导致 Excel 在电子表格中显示完全不同的颜色

所以我将Excel单元格的内部颜色设置为特定值,如下所示:worksheet.Cells[1,1].Interior.Color=0xF1DCDB;但是,当我随后在Excel中打开电子表格时,我发现出现的颜色完全不同(在上述情况下,生成的电子表格中的颜色为0xDCDCEF)。我尝试了几种不同的颜色,它总是会改变,但我没有看到任何图案。这有什么原因吗?我什至尝试通过编写Color.FromArgb(241,220,219).ToArgb()来设置颜色,同样的事情发生了。 最佳答案 经过大量测试,我终于弄明白了,而且它非常简单。显然,E

c# - 循环直到 TcpClient 响应完全读取

这个问题在这里已经有了答案:ReceivingdatainTCP(10个答案)关闭2年前。我写了一个简单的TCP客户端和服务器。问题出在客户身上。我在读取来自服务器的整个响应时遇到一些问题。我必须让线程休眠以允许发送所有数据。我试过几次将此代码转换为一个循环,该循环一直运行到服务器完成发送数据。//Init&connecttoclientTcpClientclient=newTcpClient();Console.WriteLine("Connecting.....");client.Connect("192.168.1.160",9988);//Streamstringtoserve

c# - 使用具有模糊容忍算法的笔划作为加密 key

如何使用模糊容错来加密/解密?我希望能够使用InkCanvas上的Stroke作为我加密的key,但是当再次解密时,用户不必绘制完全相同的符号,只是相似。这可以在.NETC#中完成吗?---更新(9月9日)---我理想中想要的是一种加密算法,它可以接受基于某些基本key和定义允许差异的函数的特定key范围内的任何key..我在本地进行所有加密/解密,因此我不需要安全地通过线路发送任何内容。而且我不想存储用于加密的key,所以我没有任何可比较的东西。我可以想出一些方法来为每个相似的笔画生成相同的键,但如果想要接受任何类型的符号(不仅是字母),这并不容易。另一种选择是加密key是否可以通过

c# - 通过代码从图像中裁剪空边框的简单算法?

目前我正在C#/.NET中寻找一种相当快速且相当准确的算法来在代码中执行这些步骤:将图像加载到内存中。从位置(0,0)的颜色开始,找到未被占用的空间。剪掉这个不必要的空间。我已经说明了我想要实现的目标:我能想到的是获取(0,0)处像素的颜色,然后执行一些unsafe逐行/逐列遍历所有像素,直到我用另一种颜色遇到一个像素,然后切掉边框。我只是担心这真的很慢。所以我的问题是:您是否知道任何快速算法(最好没有任何第3方库)从内存图像/位图中删除“空”边框?旁注:算法应该“合理准确”,而不是100%准确。一些容差,例如裁剪过多或过少的一行都可以。补充1:我刚刚以最简单的方式实现了我的蛮力算法。

c# - 比较两个列表并找到这两个列表之间的增量的最有效模式/算法是什么?

我们有两个列表,比如说学生和他们的分数。我想比较这两个列表并找到新列表和旧列表之间的增量,然后找到侵入性最小的方式将任何更改插入或更新到新列表中。解决这个问题的最佳算法是什么?希望专注于对新列表和性能进行最少的更改。示例代码:ListexistingList=newList();ListnewList=newList();publicTopLists(){InitTwoLists();}privatevoidInitTwoLists(){existingList.Add(newListItem{Name="Shane",Score=100});existingList.Add(newL