这个算法还是比较简单吧,建树没有递归什么的..
大概就一个数组son[p][value]以p为父节点值是value的子节点是多少?
大致分为两个操作
1.insert
我们以0为初始的父节点,id表示节点,id的初值可以设定为1,每次来一个数我们看下树有没有这个节点,假如有就我们就不处理,假设没有这个值,int &s=son[p][value],son[s][当前价值]=id++;.然后就没了
2.query
就从0开始找到分支的最后比如我现在要找以3为父节点价值7的子节点,那么就是int &s=son[3][7];这就是下个子节点的位子.然后一层一层的找到你想找到的点.
字典树就讲完了~