研究了半天,没研究出来,这个是用函数是吧,如果你弄出来了,可以告诉我一声么
思路是有了,不过代码还没写出来.
先查找s长度一半的子串有没有重复
再找s长度一半-1的子串有没有重复.
依次下去.
如果找到将s分为重复之前的子串,重复部分,和重复部分后面的子串,三部分.
再次用如此算法对这三个部分查找.
不过还有一些小细节要实现...
补充的部分有点错误
应该是先找最大重复子串,再找其次最大重复子串.
======================================
实现了一点,还有点细节要完
当我任意给出一个字符串,且长度很长很长,让你寻找其中的规律性,将是很难的。
你要把你的例子写成通用代码,适用于各种情况,事实上就是回答了我的问题。
所以你的问题并非写VB代码的问题,而是一个数学问题,你需要设计出其数学上的通用算法,有了算法,再来编程。
但关键是数学算法!!! 唉,太难, 我看,当字符串足够长时,不亚于解密算法。
期待啊...........
看了你补充的问题,更加置疑你的编码规则,完全没有约束条件,可以任意出答案,如你补充的字符串aaaaababababaaaaababaababaababaababaababaababaababaababaabab
除了你公布的结果,还可以写成
5a 4(ba) 3a 8(2(ab)a) 2(ab)
还可以写成
5a 4(ba) 3a 8(a 2(ba)) 2(ab)
还可以写成
5a 4(ba) 4a 7(2(ba)a) 2(ba) 2(ab)
哎,严谨?严谨啊?
countin a~z
and calculat
(意思:找a~z,然后计算。)
期待结果