数据指纹检测
时间:2014-7-5 作者:SES雪蓝 分类: 关于LUA的一些事
在一个项目中,需要用广度优先,找出最少步数的解法,其中涉及到了数据的指纹检测(通过验证地图的指纹来判断是否走过这一步),一开始是这样考虑的:
hash[#hash+1]=hashValue--储存指纹的过程 function M.HashExist(hash_value) for k,v in pairs(hash) do if v==hash_value then return true end end return false end
简单说明一下,上面的hash 就是储存地图指纹的table,上面的函数就是判断hash_value这个指纹是否已经存在。
后来改成了这样:
hash[hashValue]=1--储存指纹的过程 function M.HashExist(hash_value) return hash[hash_value] end
经过对比,速度提升了不少