Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.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 数字交换错误示例_Algorithm - Fatal编程技术网

Algorithm 数字交换错误示例

Algorithm 数字交换错误示例,algorithm,Algorithm,由于这些例子,这个问题困扰着我 如果我有: 38276 其次是 87632 但问题指出,第二大问题是38627 我不明白输出应该是什么?38276

由于这些例子,这个问题困扰着我

如果我有:

38276
其次是

87632
但问题指出,第二大问题是
38627

我不明白输出应该是什么?

38276<38627<87632

所以你建议的87632不可能是下一个最大的。正如链接问题的注释部分所建议的,请看C++ NExtXPrimut.< /P>
如果有帮助,可以将其视为下一个按字母顺序排列的解决方案。也就是说,如果你有abc,(下一个最大的),下一个字母顺序将是acb

问题是要找到下一个最高的数字,而不是你目前所想的最高的数字


如果初始数字
n
38276
那么次高的数字
m
将是
38627
,因为没有任何数字
k
可以由初始数字形成,使得
n
次高的数字肯定是
38627
而不是
87632
。使用蛮力方法,您可以找到该数字的所有排列,然后对其进行排序。等价于C++的逻辑是<代码> NExtx置换> /Cuff>函数< /P>