所以我用ASCII编写了一个很大的纯文本脚本,它可以有256个来自字典的条目。字典可以包含长度为3-6个字母的任何字符串。每个条目在脚本中占用2个字节(而不是适当的字典字符串长度)。
我花了很多心思为这样的方案建立最优字典。简单的解决方案是在每个位置构建任何6个字母的子字符串,然后对每个子字符串进行计数,找到最频繁的。然后从初始脚本中排除此子字符串,并重复搜索最频繁的第二个最频繁的条目。
所有这一切看起来都很丑陋,我相信,这个任务背后已经有了严肃的数学计算,但我在任何地方都找不到任何关于这方面的参考资料。你能指导我或描述一下上述任务的可能算法吗?
发布于 2017-10-16 19:18:02
我正在寻找的是一个MTE代码构建算法。它是在几个工具中实现的,例如here (内部也提供了C代码)。
其背后的想法是一种蛮力:正如我所描述的那样。重要的是,当你找到最好的代码时,你还需要计算实际的MTE代码长度,并且只考虑保存的长度减去MTE代码的长度,这将被采用。
https://stackoverflow.com/questions/46532048
复制相似问题