首页 > 其他 > 详细

字符md5快速查找

时间:2019-11-21 00:58:31      阅读:127      评论:0      收藏:0      [点我收藏+]
//分类
const tagMap={
};

function findTag(s) {
    let pos=1;
    let tag=s.substr(0,pos);
    while (tagMap[tag]){
        pos++;
        tag=s.substr(0,pos);
    }

    return pos-1;
}

function set(s1,callback) {

    const pos=findTag(s1);
    const tag=s1.substr(0,pos);
    const d=s1[pos];

    const arr=tagMap[tag];
    if(arr){
        if(arr.indexOf(s1.substr(pos))===-1){
            const arr1=[]
            const arr2=[]
            arr.forEach(function (str) {
                if(str[0]===d){
                    arr2.push(str.substr(1))
                }else{
                    arr1.push(str)
                }
            })
            if(arr2.length===0){
                tagMap[tag].push(s1.substr(pos));
            }else{
                tagMap[tag]=arr1;
                arr2.push(s1.substr(pos+1))
                tagMap[tag+d]=arr2;
            }

        }else{

        }

    }else{
        tagMap[tag]=[]
        tagMap[tag].push(s1.substr(pos));
    }

}

set(‘552cb8e71eea229fd1ea8ac0010057e6‘)
set(‘552cb8e71eea229fd1ea8ac0010057e6‘)
set(‘542cb8e71eea229fd1ea8ac0010057e6‘)
set(‘532cb8e71eea229fd1ea8ac0010057e6‘)
set(‘522cb8e71eea229fd1ea8ac0010057e6‘)
set(‘512cb8e71eea229fd1ea8ac0010057e6‘)

console.log(tagMap)

 

字符md5快速查找

原文:https://www.cnblogs.com/caoke/p/11902123.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!