草庐IT

递归算法举例

全部标签

c# - USB显微镜的自动对焦算法

我正在尝试为低成本USB显微镜设计自动对焦系统。我一直在开发硬件方面的精密PAP电机,它能够调节microscope中的聚焦旋钮。,现在我处于困难的部分。我一直在思考如何实现这个软件。硬件有两个USB端口,一个用于显微镜相机,另一个用于电机。我最初的想法是用C#编写一个应用程序,它能够从显微镜获取图像并前后移动电机,到目前为止一切顺利:)现在我需要一些关于自动对焦的帮助,如何实现它?有什么好的算法吗?或者可能是一个可以帮助我完成任务的图像处理库?我一直在谷歌搜索,但没有成功...我将不胜感激任何帮助/想法/建议!非常感谢:)编辑:谢谢你们的回答,我会尝试所有的选项并返回这里返回结果(或

c# - 算法挑战 : merging date range

我遇到了一个有趣的问题:我有几个可以重叠的日期范围他们每个人都有一个名字是否可以“消除重叠”这些范围?即生成:一组新的范围,其中没有一个与其他范围重叠每个新范围都有相应名称的列表也许我可以让它更形象一些。这是我首先拥有的:a|------------------------------|b|-------------------|c|-----------------|这是我想要得到的:|------|---------|-------|-----|-----|aa,ca,b,ca,bb我找到了一种可行但不够优雅的解决方案:我将每个范围(从、到)转换为天数列表(d1、d2、d3等)我按

c# - .NET 的 Array.Sort() 方法使用哪种排序算法?

.NET的Array.Sort()方法使用了哪种排序算法? 最佳答案 Array.Sort()根据输入的大小选择三种排序算法之一:如果大小小于16个元素,则使用插入排序算法。如果大小超过2*log^N,其中N是输入数组的范围,它使用堆排序算法。否则,它使用快速排序算法来源:Array.Sort(Array)MethodonMSDN. 关于c#-.NET的Array.Sort()方法使用哪种排序算法?,我们在StackOverflow上找到一个类似的问题: ht

C# ReaderWriterLockSlim 避免递归的最佳实践

我有一节课使用ReaderWriterLockSlim具有一个读取方法和一个写入方法,该方法使用读取方法检索要修改的元素。一个简单的例子是:classFooLocker{ReaderWriterLockSlimlocker=newReaderWriterLockSlim();ListfooList=newList();publicvoidChangeFoo(intindex,stringbar){locker.EnterWriteLock();try{Foofoo=GetFoo(index);foo.Bar=bar;}finally{locker.ExitWriteLock();}}p

C#: 求PNG压缩算法/库

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭9年前。我需要压缩或至少降低用户上传到我网站的一些png图像的质量。我已经调整了它的大小,但这对图像大小影响不大。寻求.net4.0或以下版本的png/图像压缩或质量损失算法或库。这是我目前保存/转换图像的方式:ImagemainImg=ImageHelper.ResizeImage(bmp,600,500,false);mainImg.Save(filePath

c# - 对称密码算法之间的区别

关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭5年前。ImprovethisquestionC#看起来有4种不同的对称加密算法:RijndaelManaged、DESCryptoServiceProvider、RC2CryptoServiceProvider和TripleDESCryptoServiceProvider。我正在寻找他们之间的更多信息。主要是他们各自的区别是什么。MSDN没有多大帮助,或者我只是累了。;)我确信它们之间各有利弊,就像任何有多种做事方式的事物一样。感谢您的任何启发。托

c# - C#递归删除文件和目录

如何在C#中递归删除给定的目录?包含文件的目录。应该System.IO.Directory.Delete使用第二个参数true可以解决问题吗?编辑:所以,我实际上确实回答了我自己的问题,尽管这里的答案更清楚一些。我首先问这个问题的原因是调用Delete的代码(第二个参数设置为true)没有做它应该做的事情正在做。事实证明,这是因为在目录层次结构的下方某处有一个文件设置了RO属性,并且Polish版本的WindowsXP为此发出了一条非常奇怪的消息。 最佳答案 如果子目录也包含文件,唯一对我有用的解决方案是使用递归函数:publics

c# - 高效笛卡尔积算法

有人可以为我演示一种比我目前使用的算法更有效的笛卡尔积算法(假设有一个)。我环顾四周并用谷歌搜索了一下,但看不到任何明显的东西,所以我可能会遗漏一些东西。foreach(intiinis){foreach(intjinjs){//Pairiandj}}这是我在代码中所做的高度简化的版本。这两个整数是查找键,用于检索一个/多个对象,并且将来自两个查找的所有对象配对成新对象。这个小代码块在一个更大更复杂的系统中成为一个主要的性能瓶颈,因为它运行的数据集规模很大。通过改进用于存储对象的数据结构和所涉及的查找,可能会减轻其中一些问题,但我认为主要问题仍然是笛卡尔积本身的计算。编辑关于我对算法的

c# - 如何执行完整的递归目录和文件扫描?

这是我的代码:privatestaticvoidTreeScan(stringsDir){foreach(stringdinDirectory.GetDirectories(sDir)){foreach(stringfinDirectory.GetFiles(d)){//Savefilef}}TreeScan(d,client);}问题是它没有获取sDir(起始目录)的FILES它只获取文件夹和文件在子文件夹中。如何让它也从sDir获取文件? 最佳答案 不要重新发明轮子,使用GetFiles的重载,允许您指定它搜索子目录。strin

c# - 在 C# 中递归复制内容的最佳方法是什么?

使用C#和ASP.NET将一个文件夹的内容递归复制到另一个文件夹的最佳方法是什么? 最佳答案 你可以试试这个DirectoryInfosourcedinfo=newDirectoryInfo(@"E:\source");DirectoryInfodestinfo=newDirectoryInfo(@"E:\destination");copy.CopyAll(sourcedinfo,destinfo);这是完成所有工作的方法:publicvoidCopyAll(DirectoryInfosource,DirectoryInfotar