首页 > 其他分享 >字典树

字典树

时间:2024-03-24 20:55:20浏览次数:16  
标签:__ cur self son def 字典

字典树

高效存储查找字符串【以空间换时间】

模板

可以维护许多信息:

①某个字符串出现的次数;

②判断前后缀;

class node:
    def __init__(self):
        self.son = dict()

    def insert(self,s):
        cur = self
        for i in s:
            if i not in cur.son:
                cur.son[i] = node()
            cur = cur.son[i]
                    
    def search(self,s):
        cur = self
        for i in s:
            if i not in cur.son:
                break
            cur = cur.son[i]

标签:__,cur,self,son,def,字典
From: https://www.cnblogs.com/gebeng/p/18093036

相关文章

  • C# Dictionary(字典)的键、值排序
    Dictionary<string,string>dic1=newDictionary<string,string>();dic1.Add("ddd","123");dic1.Add("aaa","123");dic1.Add("ccc","123");dic1.Add("fff",&q......
  • pyhon字典值存储列表
    示例构建了一些域名作为字典键值对,将顶级域名下不同的二级域名添加到字典值存储列表importredata=["x.douyinvod.com","x.amemv.com","x.snssdk.com","x.douyincdn.com","x.douyinliving.com","x.huoshanlive.com"......
  • 两道神奇的字典树
    AEC122D题意:你现在有\(2N\)个球,现在A和B轮流拿,设每一次拿到两个球的权值的异或为\(p_i\),定义分数为\(\max\{p_i\}\)。A希望它大,B希望它小。求最后的分数。题解:首先,B有绝对优势,B先把它们两两分组,A拿走了一个时,B直接拿走与它同组的那个。所以现在题目变为求每一组......
  • B树B+树,字典树详解,哈夫曼树博弈树
    目录B树:B-TreeB+树字典树:TrieTree 哈夫曼树博弈树B树:B-Tree多路平衡搜索树1.M阶B树,就是M叉(M个指针)。2.每个节点内记录个数<=M-1。3.根节点记录个数>=1。4.其余节点内记录个数>=ceil(m/2)-1(向上取整)。5.每个节点内的记录从左至右从大到小有序。6.当前记录的左......
  • B3927 [GESP202312 四级]小杨的字典(入门小白版)
    本题包括:1.简单的map使用2.字符串简单处理本题参考洛谷题解: https://www.luogu.com.cn/problem/solution/B3927难度:普及-对于笔者而言:不会用map,在b站和csdn上搜map的使用方法,只能说是杂而乱杂在于:介绍的种类方法多种多样,但是底下的使用方法寥寥无几,与开头的介绍有......
  • python疑难杂症(9)---python的数据类型字典(dict)的创建、访问、修改、删除等方法汇总
    在Python中,字典(Dictionary)是一种内置的数据烈性,是无序的数据结构,用于存储键值对(key-value)。字典中的每个元素由一个键(key)和一个对应的值(value)组成,键和值之间使用冒号(:)进行分隔,每个键值对之间使用逗号(,)进行分隔。字典中的键必须是唯一的,而值可以是任意类型的对象,字典可以用来存......
  • 【Oracle】数据字典dba_tables
    视图dba_tables是数据库中所有数据表的描述。该视图包含的列属性还是非常多个,需要慢慢品味。查看视图如下:sys@PDB1>descdba_tables;NameNull?Type 描述------------------------------------------......
  • 列表与字典
    字典:#遍历字典内容1class1={'丁一':85,'王二':95,'张三':75,'李四':65,'赵五':55}foriinclass1:#这个i代表的是字典中的键,也就是丁一、王二麻子等print('class1:',i,class1[i]) #遍历字典内容2class1={'丁一':85,......
  • C# 哈希表Hashtable与字典表Dictionary<K,V>的比较。
    原文链接:https://blog.csdn.net/heyuchang666/article/details/50503240?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1-50503240-blog-104036330.235%5Ev43%5Epc_blog_bottom_relevance_base4&depth_1-u......
  • python Ai 应用开发基础训练,字符串,字典,文件,函数,装饰品,生成器(下)
    生成器的另一个示例,这个生成器功能是从大小生,生成斐波那契数列deffib(max):#定义一个函数fib,参数为maxa,b=0,1#初始化两个变量a和b,分别赋值为0和1n=0#初始化计数变量n为0whileb<max:#当b小于max时继续循环print(b)#打印当前的斐波......