Tag: 算法

最长的连续子序列算法

我有一个“Range”对象数组,其属性为“Offset”和“Length”,如下所示。 假设它将按“偏移”升序排序。 范围数组包含: Offset Length Index ——- ——- ——- 100 10 0 110 2 1 112 5 2 117 3 3 300 5 4 305 5 5 400 5 6 405 10 7 415 2 8 417 4 9 421 7 10 428 1 11 429 6 12 500 4 13 504 9 14 在这种情况下,连续的子序列将是: […]

如何获得尊重订单的集合的所有子集

我正在寻找一个C#示例,它会在尊重订单的同时为我提供一组的所有子集。 例如,我有A,B,并希望: A B AB BA 请注意,为了我的目的, AB != BA 。 对于任何输入类型,解决方案应该是通用的: List<List> GetSubsets(List originalSet) 我遇到了一些使用按位操作AB == BA的很好的解决方案(例如,为字符串列表生成所有组合 ),但到目前为止,我找不到任何解决上述内容的方法。 任何提示/指针将不胜感激!

最佳匹配算法,在比赛中均匀放置比赛

我需要一种算法,可以进行任何数量的匹配,就像你在下面看到的那样,并将它们分成圆形,如果可能的话,每次都参与其中。 我在下面围绕8和3支队伍进行了比赛。 我有问题填补我的回合,留下一个不能进入最后一轮的孤儿游戏。 现在轮次是任意的,但你可以告诉每个参与者可以在每轮中找到(1,2,3,4,5,6,7,8)。 现在这些比赛可以删除或添加,并在下面生成后随机排序,因此需要均匀分配它们并在以后查找轮次,我只是不能保存原始轮次,因为可以添加/更改游戏/删除。 该算法应该是通用的,并且每次每轮最佳匹配。 如果每支球队的对位数不均衡,那么还需要将其考虑在一起,与其他球队相比可能有额外的回合。 这也需要高性能。 我在C#.NET或其他语言中寻找一些关于如何完成它的伪代码。 8支球队,每支10场比赛 Round 1 1 vs 2 3 vs 4 5 vs 6 7 vs 8 Round 2 1 vs 3 2 vs 4 5 vs 7 6 vs 8 Round 3 1 vs 4 2 vs 3 5 vs 8 6 vs 7 Round 4 1 […]

这个在C#中使用QuickSort算法有什么问题?

可悲的是,我也遇到了Quicksort的问题。 我和其他学生讨论了这个问题并尝试了标准的故障排除方法。 但我找不到我做错了什么…… static int partition(int[] A) { int pivot, i, j; i = 0; j = A.Length; pivot = A[i]; do { do { i++; } while (A[i] < pivot || i pivot); swap(ref A[i], ref A[j]); } while (i < j); if (i <= j) { swap(ref A[i], ref A[j]); swap(ref A[0], ref […]

C#Vertex Edges

我在完成这个任务时遇到了问题:n顶点图是一个蝎子,如果它有一个顶点1(sting)连接到一个顶点2(尾部)连接一个顶点3(主体)连接到其他顶点(英尺)。 一些脚可能连接到其他脚。 设计一种算法,决定给定的图形是否代表蝎子并告诉哪条线是刺,尾,体和脚。 这是我要读取的数据文件: (+)是边缘和( – )哪里没有边缘 我想先找到刺痛但我基本上可以搜索尾巴和身体的连接? 我也必须使用递归 编辑:好的,现在我发现每行有多少“+”: int[] B = new int[100]; for (int i = 0; i < n; i++) { for (int j = 0; j =3) { Console.WriteLine(“It’s a scorpion!”); Console.WriteLine(“The body is in: ” + i + ” part”); } } 随着递归,我正试图寻找路径连接……我该如何继续? static void Find(string[,] A, int n, […]

如何在控制台中显示一个简单的空心星号矩形?

有人可以用一种简单的方法告诉我在C#中实现空心矩形吗? 我已经能够制作一个简单的矩形,但我看到的空心矩形程序包含在数组中,或者是非常复杂的。 例如, 另一个论坛上的解决方案似乎过于具有挑战性,而CodeReview.SE上的这个答案太难理解了。 这就是我所做的,它显示了一个简单的(填充)矩形。 如果可能,如何使用if逻辑输出空心矩形? class Nested_Loops_Hollow_Rectangles { public void RunExercise() { // how are now supposed to make this hollow? // columns are side by side, rows is number of top to bottom // see tut Console.WriteLine(“Welcome to the HollowRectanglePrinter Program.”); Console.WriteLine(“How many columns wide should the rectangle be?”); //ie 4 int iColMax, […]

用于偏色去除的SVM图像标注的实现

我正在实现基于[ 1 ]的自动色偏移除 ,这看起来像一个强大,简单且性能良好的方法。 为了避免通过主要颜色(例如大片植被或水)去除内在投射,他们使用[ 2 ]描述的图像注释方法。 偏色检测器使用多类支持向量机将图像区域分类为天空,皮肤,植被,水或其他。 我的问题是[ 2 ]仅描述了该方法,它们不包括训练SVM所产生的超平面参数。 培训新的SVM超出了我的范围,但我没有找到任何类似的工作,包括即用型数据。 我真的很感激以下之一: A.使用[ 2 ]中的方法训练产生的一组超平面参数。 B.天空/皮肤/植被/水的一些其他图像标注方法,包括训练的参数或不需要训练。 C.一些包含天空/皮肤/植被/水的注释区域的免费图像数据库,我可以使用[ 2 ]中的方法训练新的SVM。 参考 F. Gasparini和R. Schettini“ 使用简单图像统计数字照片的色彩平衡 ” C. Cusano,G。Ciocca和R. Schettini“ 使用SVM进行图像标注 ”

C#从Guid创建一个Auth Token并结合40Char Hex string(UUID)

我正在编写一个驱动iPhone应用程序的asp.net MVC应用程序。 我希望Iphone发送给我的UUID看起来像这样: 2b6f0cc904d137be2e1730235f5664094b831186 在服务器上我想生成一个Guid: 466853EB-157D-4795-B4D4-32658D85A0E0 在Iphone和服务器上,我需要一个简单的方法来将这两个值组合成一个可以传递的Auth令牌。 IPhone和ASP.NET MVC应用程序都需要能够根据UUID和GUID反复计算值。 所以这需要是一个简单的算法,没有来自.net框架的库。 完全解决方案 public void Test() { var DeviceId = Guid.NewGuid(); var newId = “2b6f0cc904d137be2e1730235f5664094b831186”; var guidBytes = DeviceId.ToByteArray(); var iphoneBytes = StringToByteArray(newId); byte[] xor = new byte[guidBytes.Length]; for (int i=0;i<guidBytes.Length;i++) { xor[i] = (byte) (guidBytes[i] ^ iphoneBytes[i]); } var result = ByteArrayToString(xor); } public static byte[] […]

确定点是否位于有界区域内的算法

如何确定一个或多个点是否位于给定边界的区域内? 例如,在下图中,三个蓝点位于以红色为界的区域内,两个红点位于以蓝色为界的区域内,并且有三个点 – 两个蓝色和一个红色 – 不属于任何一个指示区域。

查找包含给定单词的所有字符的所有单词

我正在创建一个文字游戏。 我在文本文件中列出了英语词典中的所有单词。 我在这个列表中选择一个随机单词。 一旦我有了随机单词,那么我需要选择所有在所选择的随机单词中包含所有字符的单词。 我需要一个策略来做到这一点。 此外,我应将单词列表放在文本文件或数据库中。 这样做的最佳策略是什么? 编辑 匹配示例: “匹配他,他,呃,不是 – > Thee,Tee “箔”匹配油,如果不是 – >填充,傻瓜,关闭, 正如您在上面的示例中所看到的,随机单词不能匹配具有更多字符的单词或具有更多单个字符的单词然后随机单词 例如: e必须与ee不匹配 el必须与鳗鱼不匹配 很多不能与战利品相匹配