第一百零八章 莫斯科的陌生人(下) (第1/2页)
字符串中的第一个字符,如果它出现在子序列中,那么它肯定是位于第一位置的,而不可能是第二,第三。
比如“abc”的第一个字符“a”,它在子序列“ac”中,就是处于第一位。
这个问题的关键在于,找出子序列中,始终出现在第一位的字符,它就是原字符串的第一个字符。
[“N“,“C“,“L“]
[“I“,“O“,“A“]
[“C“,“O“,“S“]
[“I“,“C“,“O“]
[“O“,“L“,“S“]
这五个子序列,满足这个条件的第一个字符是“N”,所以它就是原字符串的第一个字符。
然后,去掉“N”在子序列中的所有存在,继续找始终出现在第一位的字符。
[“C“,“L“]
[“I“,“O“,“A“]
[“C“,“O“,“S“]
[“I“,“C“,“O“]
[“O“,“L“,“S“]
可以发现“I”满足条件,而“C”不满足,因为它在第四个子序列中,出现在了第二的位置。
去掉“I”在子序列中的所有存在,继续查找。
[“C“,“L“]
[“O“,“A“]
[“C“,“O“,“S“]
[“C“,“O“]
[“O“,“L“,“S“]
“C”满足条件,去掉存在,继续查找。
[“L“]
[“O“,“A“]
(本章未完,请点击下一页继续阅读)