如何解决在列表中查找所有可能的项目组合,并将其放入更大尺寸的列表中
我正在用 Java 对此进行编程,但不用担心您选择的响应语言。这更像是一个合乎逻辑的问题。
我有一个大小为 n
的项目数组,例如:[a,b,c...]
。我有第二个 空 大小为 p
的数组。请注意,大小为 p
的空数组将总是大于之前的数组大小 n
。我想将第一个数组中元素放置的所有组合迭代到空数组中。 (请注意,填充数组中的项将始终按该顺序排列。它们出现的顺序不能更改;但是,放置元素之间的间隔 可以更改。
组合示例为(假设 n=3
和 p=5
):
n = 3 = [a,c]
Could make:
[a,c,_,_]
[a,c]
[a,c]
[_,a,_]
etc...
我知道我会首先将最后一个元素一直移动到最后一个元素 1 个 1 然后将第二个元素移动一个 1 并重复最后一个元素的移动直到倒数第二个元素也在最后因此需要将第三个也是最后一个元素移动一次并重复。
我遇到的问题是在代码中表示这一点。数组的大小是变量,我不知道,但我知道 n < p
. 我不需要它可以组合的数量。我想要代码可以让我进行组合的迭代,以便我可以做进一步的检查。
如果有人能帮我在代码中表示这一点,那将非常有帮助。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。