【发布时间】:2015-02-04 07:31:28
【问题描述】:
我已经看遍了,很多人都想知道如何生成 int 数组的所有排列,例如int[] arr = {0, 1, 2}
但我想知道如何做一些更困难的事情。
我想在给定长度和最大数量的情况下生成int[]。
例如:
length = 4
max = 2
所以这意味着该方法必须生成一个长度为 4 的 int[],并且数组中的每个元素也必须是 0-2 之间的数字。
另外,第一次调用该方法时,必须返回[0,0,0,0]
第二次,必须返回[1,0,0,0]
以此类推,直到到达[2,2,2,2]
最后,我希望能够将“起点”作为参数传递给它。所以如果我给它0作为起点,它会返回[0,0,0,0],但是如果我给它2作为起点,它会返回[2,0,0,0]
我正在制作一个 100x100 像素的图像。我正在为 int[] 中的每个像素设置值
我想做的每个生成每个像素的每个组合,生成一堆随机像素,但我想以系统的方式来做,而不是仅仅给每个像素一个随机值。
【问题讨论】:
-
您的问题是什么?你试过什么?
-
原生类型是不可能的。只需创建自己的类并实现行为。
-
当然可以。只需要几个循环。
-
如果没有任何分量(R、G、B 或 A)的值大于 2,那么您生成的每张图像在人眼看来都是全黑的。
-
我知道。我使用较低的值来简化问题。如果概念证明适用于低值,它将适用于更高的值。
标签: java arrays combinations permutation