小编Lal*_*hra的帖子

编写一个算法来返回一个数组,使得1..n中的每个数字k恰好发生两次,与其副本相距k距离

在一次采访中询问了这个问题.

对于给定的整数n> = 3,返回大小为2n的数组,使得从1到n的每个数字k恰好发生两次,并且每个数字和它的重复以等于该数字的距离分开.

功能签名:

int* buildArray(int n)
Run Code Online (Sandbox Code Playgroud)

例如,对于n = 3:

3, 1, 2, 1, 3, 2
Run Code Online (Sandbox Code Playgroud)

编号2:第一个位置3和第二个位置6,所以距离6 - 3 - 1 = 2.
编号3:第一个3位置1,第二个3位置5,距离5 - 1 - 1 = 3.

对于n = 4:

4, 1, 3, 1, 2, 4, 3, 2
Run Code Online (Sandbox Code Playgroud)

algorithm data-structures

2
推荐指数
1
解决办法
314
查看次数

标签 统计

algorithm ×1

data-structures ×1