DFS to get connected components
String reverse
LCP 最长公共前缀 有没有更好的方法？