m0_73894760 2022-10-08 14:06 采纳率: 0%
浏览 105

输入一个长度大于10位的自然数,输出将其各位数字重新排列成的比原数小的 最大数。

输入一个长度大于10位的自然数,输出将其各位数字重新排列成的比原数小的
最大数。

  • 写回答

2条回答 默认 最新

  • 快乐鹦鹉 2022-10-08 14:36
    关注

    从右向左逐位数字比较,找到第一对递增的数对,然后先交换两个数,再把已经比较过的非递增序列按降序排列即可
    比如1435678,从右向左找到3和4为递增,那么首先3和4交换,得到1345678,然后再将比较过的45678降序排列,从而得到1387654为符合条件的最小数

    评论

报告相同问题?

问题事件

  • 创建了问题 10月8日