问题标签 [permutation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
3582 浏览

c - 需要有关 crypt(3) 暴力破解代码的帮助

我正在尝试用 C 语言开发一个程序,该程序将“破解”UNIX 使用的 crypt(3) 加密。我猜最天真的方法是暴力破解。我想我应该创建一个包含密码可以具有的所有符号的数组,然后获取它们的所有可能排列并将它们存储在一个二维数组中(其中所有 1 个字符的密码都保存在第一行等)通过 for循环。有没有更好的方法来做到这一点?循环非常混乱。

0 投票
5 回答
9377 浏览

arrays - 在恒定空间中交错数组

假设我们有一个数组 a1, a2,... , an, b1, b2, ..., bn。

目标是在 O(n) 时间和 O(1) 空间内将此数组更改为 a1, b1, a2, b2, ..., an, bn。换句话说,我们需要一个线性时间算法来就地修改数组,而额外的存储量不超过恒定量。

如何才能做到这一点?

0 投票
5 回答
294 浏览

set - 设置组合题

将此作为家庭作业,但不确定从哪里开始!

给定集合{1,2,3,4},您可以从该集合中形成长度为 2 的六种组合,即:

如果我要选择其中一种组合,({1,2}例如),我怎么知道有多少其他组合与它不相交?在这种情况下,它是四个:{1,3},{1,4},{2,3}{2,4}

不太确定如何在数学上进行此操作,任何指向正确方向的指针都将不胜感激。

0 投票
12 回答
54211 浏览

algorithm - 生成所有长度为 n 且设置了 k 位的二进制字符串

找到包含 k 位集合的所有长度为 n 的二进制字符串的最佳算法是什么?例如,如果 n=4 且 k=3,则有...

在给定任何 n 和任何 k 的情况下,我需要一种生成这些的好方法,所以我希望它用字符串来完成。

0 投票
10 回答
11137 浏览

permutation - 电话号码表示的数字的排列

我有 2 天的面试,我很难找到这个问题的解决方案:我想要做的是 .. 对于任何电话号码 .. 程序应该打印出它代表的所有可能的字符串。例如)数字中的 2 可以替换为“a”或“b”或“c”,3 可以替换为“d”“e”“f”等。这样可以从 a 中形成多少种可能的排列给定的电话号码。我不希望任何人为它编写代码......一个好的算法或伪代码会很棒。

谢谢

0 投票
3 回答
560 浏览

php - PHP清理排列数组

大家好,基本上,我有一个数组:

现在我通过一个数组置换函数运行它,结果是:

现在我的问题是,我如何清理该数组以便:

它删除了第二个数组

我该怎么做?

编辑...根据您的答案进行一些研究后,这就是我想出的:

0 投票
1 回答
634 浏览

prolog - Prolog 语法 - 使用函数结果

我正在尝试对以下的每个结果执行求和运算:

例如,用户将输入 is_sum_equal_10 ([1,2,3,4,5,6,7]),如果任何排列之和等于 10,则结果将为真。

我正在努力将它们放在一起,有人可以帮我定义为每个排列使用组合规则的 is_sum_equal_10 规则吗?

0 投票
10 回答
20619 浏览

java - 在java中生成没有重复/排列的变化

我必须生成所有变化而不重复数字 0 - 9。

它们的长度可以从1到10。我真的不知道如何解决它,尤其是如何避免重复。

示例:变化的长度:4 个随机变化:9856、8753、1243、1234 等(但不是 9985 - 包含重复)

如果有人可以帮助我解决这个问题,我将非常感激,尤其是提供一些代码和线索。

0 投票
1 回答
1184 浏览

c++ - c ++ m位数字的排列

我正在寻找一个函数,它以数字x(假设为 15)、位数d(4)和排列数m(2)作为输入。该函数的输出将是所有从给定数字xd长度位排列的m位排列的数字。

对于给定的数字,(x = 15,d = 4 和m = 2)我们得到6=\binom{4}{2}不同数字的组合。

我想知道这种函数是否已经存在于 C++ STD 或 boost 等中,它返回给我这些数字......

PS,如果您知道一个返回所有排列数字的函数,直到m

问候

0 投票
6 回答
647 浏览

javascript - javascript: 快速 Array.contains(otherArray)?

我有一个数组数组。内部数组是 16 个插槽,每个插槽都有一个数字 0..15。一个简单的排列。

我想检查外部数组中包含的任何数组是否具有与测试数组相同的值(16 个值的排列)。

我可以通过以下方式轻松做到这一点:

但是有更快的方法吗?

我可以为每个排列分配一个整数值 - 实际上是一个 64 位整数吗?

插槽中的每个值都是 0..15,这意味着它可以用 4 位表示。有 16 个时隙,这意味着总共 64 位信息。

在 C# 中,使用 Int64 类型使用这种方法很容易计算和存储内部数组(或排列)的散列。Javascript 是否有 64 位整数数学可以使这个速度更快?