找回密码
 欢迎注册
楼主: litaoye

[求助] 一个字符串算法的优化

[复制链接]
 楼主| 发表于 2009-6-24 14:05:09 | 显示全部楼层
能否详细说明一下?

无限长保持高效很困难,RK算法已经不错啦。不过用在你这里要构造阶梯哈希表,随着长度增长,效率无限下降……
nlrte13 发表于 2009-6-24 12:21
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2009-6-24 15:07:04 | 显示全部楼层
先扫描1位长的有时候会有问题,比如:

dvddvddvddvd

就会变为d(vd*2)*3vd 而不是dvd *4


litaoye 发表于 2009-6-24 13:45

这个只能说有歧异,其实这时要找最佳匹配本来就很难.
比如说dvdvddvddvd结果应该是(dv)*2d(dvd)*2呢?还是dv(dvd)*3呢?这个本来就没有明确定义

评分

参与人数 1威望 +1 鲜花 +1 收起 理由
litaoye + 1 + 1 一针见血

查看全部评分

毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2009-6-24 15:20:01 | 显示全部楼层
确实存在歧义的情况,我也想了一些例子,比如
ddvddvddvddvd
可以分为2种情况
d dvd dvd dvd dvd
ddv ddv ddv ddv d

我觉得随便找出一种就可以,当然最好是都可以找出来,此外尽量匹配长的情况。
这个只能说有歧异,其实这时要找最佳匹配本来就很难.
比如说dvdvddvddvd结果应该是(dv)*2d(dvd)*2呢?还是dv(dvd)*3呢?这个本来就没有明确定义
mathe 发表于 2009-6-24 15:07
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2009-6-24 15:23:19 | 显示全部楼层
btw,这个问题是在实际应用中产生的,出现特殊情况的概率并不高,我也希望把情况考虑的更加周全一些,感谢大家的出谋划策。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2009-7-3 08:39:36 | 显示全部楼层
RLE算法吗?
或者说是RLE的加强版?LZ这个方法里似乎有字典的概念存在...
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
您需要登录后才可以回帖 登录 | 欢迎注册

本版积分规则

小黑屋|手机版|数学研发网 ( 苏ICP备07505100号 )

GMT+8, 2024-5-7 09:39 , Processed in 0.065735 second(s), 15 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表