MPT树前置 - 前缀树及压缩前缀树

⭐️前缀树的结构

Trie 前缀树

是什么:是一种有序的多叉树,用于存储字符串,适合前缀匹配查询。 1. 每个节点代表一个字符 2. 根节点不存储字符 3. 路径代表一个字符串的前缀 image.png

Patricia Trie 压缩前缀树

是什么:是前缀树的变种,通过压缩路径使得树的高度不至于过高。 1. 每个节点可以存储字符串,而不是单个字符。 2. 如果树没有分叉,则可压缩成一个节点。

image.png

⭐️前缀树的特点

  1. 适合前缀匹配:快速判断某个字符串是否已有单词的前缀
  2. 节省存储空间:多个字符串共享前缀
  3. 支持字典序输出:天然支持排序输出

⭐️前缀树的插入、删除、查找复杂度

  1. 插入:O(n)
  2. 查找:O(n)
  3. 删除:O(n)

⭐️前缀树和merkle树的对比

作用:前缀树用于字符串前缀匹配,mekle树用于数据验证

⭐️前缀树的应用

  1. 搜索引擎的自动补全
  2. web服务器的路由匹配
  3. 大量字符串的压缩存储
全部评论(0)
推荐文章
Pectra 升级的核心:EIP-7702的原理分析和实操
来 The Web3, 学习史上最全面的区块链教程,挑战高薪
TON钱包签名、私钥导入与发送交易
Rust 实战:构建高效的异步 P2P 网络节点
深入理解solana-keygen
solana账户总结
以太坊POS工作原理详解:Epoch、Slot 与信标区块
以太坊发币 - 超简单发行 ERC-20 代币并上线到 holesky 上
NFT发行 - 超简单发行 NFT 到 holesky 上(包含 ERC165、ERC721Receiver 的含义)
wrapped SOL 与 naive SOL 互相转换
The Web3 社区--区块链运维课程大纲
更安全的签名 - EIP712 结构化签名
带你手搓一个预言机 - 极简版的 ChainLink VRF 随机数生成
The Web3 区块链钱包教程大纲
DeFi 项目的基石 - ERC4626 代币金库协议的实现
以太坊代理模式的天花板 - 信标代理
SOL合约部署调用与销毁
Uniswap价格批量查询与ws订阅行情
智能合约的身份保证 - 数字签名
Solana USDC 转账交易的细节
ERC20授权的更优方案 - ERC20Permit 签名授权
The Web3 社区 Move 共学招募
abigen 工具和 sol! 宏生成智能合约 ABI 数据结构
The Web3 社区第三期区块链技术培训课程火热招生中--四个月高强度挑战,成为区块链技术高手
事件监听 - 合约事件监听的方案汇总
MPC托管系统工作原理
监听合约事件 -- 手把手带你在线、离线部署 The Graph
代币集大成者 - 手搓一个ERC1155合约并上线 holesky
如何成为一名专业的 Web3 产品经理 ——Web3 产品经理课程招募!
Solana ts/rs 代码 nonce-account 签名