Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Algorithm 如何用[1,N]个整数生成非连续序列?_Algorithm_Sequence - Fatal编程技术网

Algorithm 如何用[1,N]个整数生成非连续序列?

Algorithm 如何用[1,N]个整数生成非连续序列?,algorithm,sequence,Algorithm,Sequence,我必须做一个非连续整数序列a_1,a_2,…,a_n,它满足 {a_1,a_2,…,a_n}∈ [1,n] | a|i-a|(i-1)|>1 怎么做?谢谢你的提示或帮助。谢谢:)当元素少于4个时,这是不可能做到的 当有4个或更多元素时,我们可以这样构造序列: 如果n是偶数: [n-1, n-3, ... , 1, n, n-2, ..., 2] 如果n是奇数: [n, n-2, ..., 1, n-1, n-3, ..., 2] 现在n等于或大于4,| 1-n |=| n-1 |>=3,|

我必须做一个非连续整数序列
a_1,a_2,…,a_n
,它满足

{a_1,a_2,…,a_n}∈ [1,n]

| a|i-a|(i-1)|>1


怎么做?谢谢你的提示或帮助。谢谢:)

当元素少于4个时,这是不可能做到的

当有4个或更多元素时,我们可以这样构造序列:

如果n是偶数:

[n-1, n-3, ... , 1, n, n-2, ..., 2]
如果n是奇数:

[n, n-2, ..., 1, n-1, n-3, ..., 2]

现在n等于或大于4,| 1-n |=| n-1 |>=3,| 1-(n-1)|=| 1-n+1 |=| n |>=4,序列满足约束。

1,3,5,…,2k-1,2,4,…,2k
(当然,除非您想要随机,然后明确指出它)。另外-指示序列是否应该是置换(如果不是,
1,3,1,3,1,…
也可以)