我对字符串的词典顺序感到有点困惑。
所以如果我的s = "zzz"
,那么下一个是什么,即" zzz" +1,如果我可以这样说的话?是"zzza"
还是"azzz"
?
添加:此问题的字母是[a..z]。
答案 0 :(得分:1)
这将取决于您的字符集,知道哪一个是下一个,但"azzz"
在"zzz"
之前"zzza"
在"zzz"
之后。{/ p>
它与字典的顺序相同:
a..z
然后aa..az
然后ba..bz
等
答案 1 :(得分:0)
首先,在考虑字典顺序时,您必须定义最长单词的长度。除非你这样做,否则按顺序获取下一个单词意味着将字母的第一个字母附加到前一个单词。这意味着从"a"
开始,您甚至无法通过有限步数访问单词"b"
(因为"aa", "aaa"...
之类的单词都在"b"
之前订购)。
如果您想在字母表中生成连续的单词,您应该使用以下的规则顺序:
在这种情况下,"zzz"
之后的下一个词将是" aaaa
"这似乎有点反直觉,但允许你以更有用的方式在字母表中获得n-th
字。