205得票10回答
这个游戏背后的数学/计算原理是什么?

我的孩子们有一个叫做Spot It!的有趣游戏。游戏规则(尽我所能描述)如下: 这是一副由55张牌组成的牌组 每张牌上都有8个独特的图片(即一张牌不能有两个相同的图片) 从牌组中任选两张牌,只有1个匹配的图片。 匹配的图片可能在不同的牌上缩放不同,但这只是为了使游戏更难(例如,小树仍然与大树...

183得票26回答
计算给定数字的约数数量的算法

针对计算给定数字的约数数量,最优算法(在性能上)是什么? 如果您能提供伪代码或示例链接,那将非常好。 编辑:所有答案都非常有帮助,谢谢。 我正在实现Atkin筛法,然后将使用类似于Jonathan Leffler指出的方法。 Justin Bozonier发布的链接提供了我所需的更多信息。

133得票15回答
快速排序:选择枢轴

在实现快速排序算法时,你需要选择一个枢轴(pivot)。但是当我看到以下类似的伪代码时,我不清楚我应该如何选择枢轴。是列表的第一个元素吗?还是其他东西? function quicksort(array) var list less, greater if length(a...

82得票3回答
静态(词法)作用域和动态作用域(伪代码)

Program A() { x, y, z: integer; procedure B() { y: integer; y=0; x=z+1; z=y+2; } procedure C(...

60得票9回答
两个矩形相交

我有两个矩形,每个矩形由4个值描述: 左侧位置X、顶部位置Y、宽度W和高度H:X1, Y1, H1, W1 X2, Y2, H2, W2 矩形不会旋转,就像这样:+--------------------> X axis | | (X,Y) (X+W, Y) | ...

54得票5回答
用于查找列表中哪些数相加等于特定数字的算法

我有一列数字,还有一个特定的总和。这个总和由我的列表中的一些数字组成(我可能/可能不知道它是由多少个数字组成的)。有没有快速算法可以得到可能数字的列表?最好用Python编写,但伪代码也可以。(我现在只能读懂Python :P) 例子:list = [1,2,3,10] sum = 12 r...

51得票11回答
从毫秒转换为小时、分钟、秒和毫秒

我需要将毫秒转换为一个由(小时、分钟、秒、毫秒)组成的元组,表示相同数量的时间。例如: 10799999ms = 2h 59m 59s 999ms 以下伪代码是我所能想到的唯一方法:# The division operator below returns the result as a ...

49得票8回答
找到两个给定节点之间的路径?

假设我有以下连接方式的节点,如何确定给定节点之间存在的路径数量和路径细节?1,2 //node 1 and 2 are connected 2,3 2,5 4,2 5,11 11,12 6,7 5,6 3,6 6,8 8,10 8,9 查找从1到7的路径:答案:找到2条路径,它们分别为1,2,...

47得票4回答
在这个最近邻算法中,“from distinct vertex chains”的意思是什么?

以下伪代码摘自The Algorithm Design Manual在线预览版的第一章(来自此PDF的第7页)。 该示例是一个有缺陷的算法,但我仍然想要理解它: [...] 另一个想法可能是重复连接最接近的一对端点,其连接不会创建问题,例如循环过早终止。每个顶点都作为自己的单个顶点链开始。...

44得票8回答
传递闭包缩减算法:伪代码?

我一直在寻找一种算法来对图执行可传递减少,但没有成功。我的算法圣经《算法导论》(Cormen等人著)中没有相关内容,虽然我看到了很多转换闭包的伪代码,但我没有能够找到任何关于减少的内容。我找到的最接近的是在Volker Turau的《Algorithmische Graphentheorie》...