问题标签 [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.
tsql - 如何从 T-SQL 中的两个子查询中获取项目的排列?
假设我有两个子查询:
我如何结合这些来获得查询结果:
algorithm - 使用相同字符查找最接近字符串的算法
给定一个包含 n 个字符串的列表 L 和一个输入字符串 S,找到 L 中包含 S 中存在的最多字符的字符串的有效方法是什么?我们想在 L 中找到最接近由 S 中包含的字母组成的字符串。
显而易见的答案是遍历所有n个字符串,并检查当前字符串中有多少个字符存在于S中。但是,该算法会频繁运行,并且将n个字符串的列表L存储在数据库中......手动循环遍历所有 n 个字符串需要类似于 n*m^2 的 big-Oh,其中 n 是 L 中的字符串数,m 是 L 中任何字符串的最大长度,以及 S 的最大长度...在这种情况下,m 实际上是一个常数 150。
有没有比简单循环更好的方法?是否有可以将 n 个字符串加载到其中的数据结构,可以让我快速搜索?是否有一种算法使用预先计算的关于 n 个字符串中的每一个的元数据,其性能会比循环更好?
我知道有很多极客都在研究算法。所以请帮忙!
谢谢!
java - 您如何将每个 Collection 的项目与另一个 Collection 的项目相关联?
我有两个 Collection 对象,我想以一种可读的方式关联这两个对象中的每个对象(HashMap,有意创建的对象,您可以选择)。
我在考虑两个循环,一个嵌套到另一个,但也许这是一个众所周知的问题,并且有一个普遍可以理解的解决方案......
如果 Collection 对象的数量超过两个怎么办?
Joseph Daigle 评论后编辑: Collection 对象的项目都是同一类型,它们是在特定条件下可预订的酒店房间。
编辑2:我会尽力解释得更好,抱歉问题不清楚。举个例子:一个用户要求一个双人间和一个单人间。酒店拥有 3 间双人间和 4 间单人间。
我需要将每个“双人房”与每个“单人房”关联起来,这是因为每个房间都有自己的特点,比如互联网、更宜人的景观等等。所以我需要给用户所有的组合让他选择。
这是一个简单的案例,其中只涉及两个房间对象集合,当酒店和用户都可以提供/请求更多房间类型时,您如何管理问题?
c# - 组合题
我有一个像下面这样的数组
N = 4 的示例
我如何在不使用 linq 的情况下计算该数组的所有未重复组合?
2,4,6,8
2,4,8,6
2,8,6,4
2,6,4,6
8,6,4,2
2,4,6,8
..........
_ ………………
_
permutation - 固定位置排列/组合
我正在寻找一种方法,我可以生成 4 个集合元素的不同组合,这样每个集合的元素在最终组合中都有一个固定的位置:为了更好地解释我的要求,让我给出这 4 个集合的样本,最后我我正在寻找:
Set#1(街道前方向) { N, S } Set#2(街道名称) {Frankford, Baily} Set#3(街道类型) {Ave, St} Set#4(街道后方向) {S}
让我列出几个预期的组合:
N Baily Ave S
S Frankford St S
S Baily Av S
。
.
.
现在你可以看到每个集合的元素都在它的位置
Pre Direction is in Place 1
Street Name is in Place 2
Streety Type is in Place 3
Street Description is in Place 4
我正在寻找执行此任务的最有效方法,一种方法是一次处理 2 组,例如:
组合
第 1 组和第 2 组 --> 创建一个新的第 5 组结果组合
第 5 组和第 3 组的组合 --> 创建一个新的第 6 组结果组合
组合第 6 组和第 4 组 --> 这将为我提供最终组合
有没有最好的方法来做这件事?请帮忙。我会更喜欢 C# 或 Java。
谢谢
algorithm - 快速约会算法
我在一家咨询机构工作,大部分时间都在客户所在地。因此,我很少见到我的同事。为了更好地了解彼此,我们将安排一次晚宴。会有很多小桌子,所以人们可以聊天。为了在聚会期间与尽可能多的人交谈,每个人都必须每隔一段时间换桌,比如说每小时。
如何编写创建表切换时间表的程序?只是给你一些数字;在这种情况下,大约有 40 人,每张桌子最多可以有 8 人。但是,算法当然需要通用
sql - SQL查询--字符串排列
我正在尝试使用 OpenOffice 上的数据库创建查询,其中在查询中输入字符串,并在数据库中搜索字符串的所有排列并显示匹配项。我的数据库有一个单词及其定义的字段,所以如果我正在寻找 GOOD,我会得到它的定义以及 DOG 的定义。
permutation - 找到没有元素留在原地的排列
我正在处理每个元素与其原始位置不同的排列。我想要一个给定{输入长度,行和数字}的算法,会给我输出数字。这是一个例子:
如果输入长度为四,则 0123 的所有排列为:
没有数字在同一位置的排列(每个数字都移动了):
编号从 0 开始,因此如果函数的输入是 {4,0,0},则输出应该是第 0(第一个)排列的第 0(最左边)数字。1032的第一位是1。
如果输入是 {4,1,1},则输出是 1230 的第二个数字,即 2。
行数可能大于排列数。在这种情况下,取余数模排列数(在上述情况下,行模 9)。
在c语言中会很棒。
(这不是家庭作业,是为了工作。Cuckoo hashing 如果你必须知道的话。我想随机选择我将在每个阶段进行的交换,看看当表数大于两个时它是否比 BFS 更好.)
python - 寻找优雅的球状 DNA 字符串扩展
我正在尝试对一组具有多个可能碱基的 DNA 字符串进行类似球状的扩展。
我的 DNA 字符串的碱基包含字母 A、C、G 和 T。但是,我可以有特殊字符,例如 M,可以是 A 或 C。
例如,假设我有字符串:
ATMM
我想将此字符串作为输入并输出四个可能的匹配字符串:
ATAA
ATAC
ATCA
ATCC
我觉得必须有一些优雅的 Python/Perl/正则表达式技巧才能做到这一点,而不是蛮力解决方案。
谢谢你的任何建议。
编辑,感谢 cortex 的产品运营商。这是我的解决方案:
仍然是 Python 新手,所以我敢打赌,处理每个字典键的方法比另一个 for 循环更好。任何建议都会很棒。
design-patterns - 运行置换代码序列以通过枚举器运行的最聪明的方法是什么?
我有以下枚举(伪代码)
你明白了......现在,如果每个字母代表大约 4 行代码,那么根据传递的 RunSequence 以所需的顺序构建运行这 16 行代码的逻辑的最聪明的方法是什么?
我完全迷失了......应该通过完全不同的方法来实现吗?我宁愿不使用 goto,而是使用一些 OO 方法......设计模式