按字典顺序排列较大的字符串

时间:2015-03-02 02:25:49

标签: string lexicographic

我正在尝试理解字典大小或更小字符串的概念。我的书给出了一些字典的字典,这些字符串在字典上大于或小于彼此,以及介于两者之间的中间字符串。

string 1: a
string 2: c
intermediary string: b

string 1: aaa
string 2: zzz
intermediary string: yyy

string 1: abcdefg
string 2: abcdefh
intermediary string: (none)

我不确定字符串在两个字符串之间按字典顺序排列是什么要求。是否中间字符串的每个字母必须具有比第一个字符串的相应字母更大的ASCII值以及第二个字符串的相应字母的较小ASCII值?

例如,“bcdefg”是“abcdef”和“cdefgh”之间的中间字符串。 “stuvx”可以成为“stuvw”和“stuvy”之间的中间人吗?

1 个答案:

答案 0 :(得分:4)

词典排序仅仅意味着字典排序。我说"简单地说#34;但实际上可能存在各种奇妙的边缘情况,例如你如何处理撇号,你用双元音做什么,你是否"折叠"将重音字母加入到不重音的字母中,例如转换{À,Á,Â,Ã,Ä} -> A。关于如何整理字母的所有这些规则也会影响单词的排序。

如果你将自己限制在二十六个字母的实际字母中,那么英语就相当容易了。你可以认为一个词是"较小的"如果在第一个字符位置不同的第一个字符位置,则第一个字的字符位于第二个字的位置之前。

事实上, 是第三种选择的解决方案,前提是它不必与其他选项的长度相同,只需:

string 1: abcdefg
string 2: abcdefh
intermediary string: abcdefga