zoukankan      html  css  js  c++  java
  • Trie树学习(复习)笔记

    (Trie)树一般用于词频统计或者前缀匹配,当然还有一些高级操作。

    一棵空(Trie)仅包含一个根节点。

    一般是设(trie[pos][val]),表示当前指针(pos)(val)指针。(一定注意(val)是值,而不是枚举的下标。)

    插入时,枚举(c)字符,若指针(pos)(val)指针指向一个已经存在的节点(p0),则令(pos=p0)。若其指向空,则新建一个节点(p0),令(pos)(val)指向(Q),然后令(pos=p0)。注意到最开始(pos=1),意思是(pos)指向空的根节点(1)

    时间复杂度:一般的(Trie)树插入是(O(|S|))的,构造是(O(sum{|S|}))的。

    空间复杂度:一般的(Trie)树空间复杂度是比较大的,(pos)维要开到(sum{|S|})(因为可能没有公共前缀),(val)维要开到值域。

    目前主要学的(Trie)树的用途就是字符串的处理,以及维护最大异或和等。

  • 相关阅读:
    hdu 1.2.4
    交换机&&路由器
    AP、AC、无线路由器
    肩胛骨
    无线路由器
    背部肌肉
    胸部肌肉
    redis未授权访问
    进制
    攻防实验
  • 原文地址:https://www.cnblogs.com/andysj/p/13861286.html
Copyright © 2011-2022 走看看