考虑以下情况:
我有一个数字数组:
[ 1,2,3,4 ]
如果把这个数组连接起来,我会得到数字1234。
我想交换数字以获得最接近的较高数字。 1234将变成1243,然后是1324,再是1342等等。 我需要使用什么算法在数组中进行这些更改? 理想情况下,我想以以下方式使用该算法:(假设Array有这个算法作为名为walkthrough的函数)
[ 1,2,3,4].walkthrough() # gives [ 1, 2, 4, 3 ]
[ 1,2,4,3].walkthrough() # gives [ 1, 3, 2, 4 ]
数字列表如下:
1234
1243
1324
1342
2134
2143
2314
2341
2413
2431
3124
3142
3214
3241
以上是一组排列组合的数字列表。