【问题标题】:How to find the next greater string in alphabetical order in Golang?如何在Golang中按字母顺序查找下一个更大的字符串?
【发布时间】:2017-05-26 07:21:24
【问题描述】:

例如:abcd -> abce , qwer -> qwes

my_string := "abcd"

我怎样才能让 my_string 拥有“abce”?

【问题讨论】:

标签: string go


【解决方案1】:

逻辑上: 看最后一个字母。如果不是 z,则将其加一。如果是z,设置为a,然后看倒数第二个字母。如果不是 z,则将其加 1。如果是 z,则将其设置为 a 并查看倒数第三个字母.... 以此类推

尝试自己找出代码,这实际上很有趣。如果您想要代码,只需回复,我会解决它

【讨论】:

    【解决方案2】:

    正如@Mauricio 所说,以相反的顺序解析字符。如果不是'z',则增加一个字符。如果所有字符都是'z',则将第一个'z'替换为'aa'。

    go playground link

    【讨论】:

      猜你喜欢
      • 2014-11-26
      • 2010-11-04
      • 1970-01-01
      • 1970-01-01
      • 2014-08-05
      • 1970-01-01
      • 1970-01-01
      • 2021-08-29
      • 2019-04-17
      相关资源
      最近更新 更多