小白专享-图解以太坊编程

2025年06月30日更新 16 人订阅
专栏简介 最基础的数据结构 - Merkle 树 MPT树前置 - 前缀树 以太坊的核心数据结构 - MPT树 以太坊数据检索的基石 - 布隆过滤器 入门以太坊的编程的第一步 - Solidity 基本语法 Gas优化的核心 - 以太坊数据存储布局及内存优化 以太坊进阶操作 - 合约调用、地址预测、发送与接收 ETH 以太坊编程进阶 - ABI 编码、函数选择器、合约升级 以太坊代理模式的进阶 - 钻石代理和最小代理 以太坊代理模式的天花板 - 信标代理 以太坊发币 - 超简单发行 ERC-20 代币并上线到 holesky 上 NFT发行 - 超简单发行 NFT 到 holesky 上(包含 ERC165、ERC721Receiver 的含义) 带你手搓一个预言机 - 极简版的 ChainLink VRF 随机数生成 监听合约事件 -- 手把手带你在线、离线部署 The Graph 事件监听 - 合约事件监听的方案汇总 代币集大成者 - 手搓一个ERC1155合约并上线 holesky DeFi 项目的基石 - ERC4626 代币金库协议的实现 智能合约的身份保证 - 数字签名 更安全的签名 - EIP712 结构化签名 ERC20授权的更优方案 - ERC20Permit 签名授权 更安全的钱包 - 最小代码手搓 gnosis safe 多签钱包 空投大杂烩 - 合约实现空投发放的三种方案 发币防止大户提前跑路 - 手搓一个线性释放合约 你也不想你的代币被盗吧? - 手搓实现代币锁和时间锁 Pectra 升级的核心:EIP-7702的原理分析和实操 Resupply 黑客事件分析

MPT树前置 - 前缀树

  • shawn_shaw
  • 发布于 2025-04-13 05:37
  • 阅读 404

⭐️前缀树的结构是什么:是一种有序的多叉树,用于存储字符串,适合前缀匹配查询。每个节点代表一个字符根节点不存储字符路径代表一个字符串的前缀⭐️前缀树的特点适合前缀匹配:快速判断某个字符串是否已有单词的前缀节省存储空间:多个字符串共享前缀支持字典序输出:天然支持排序输出⭐️

⭐️前缀树的结构

Trie 前缀树

是什么:是一种有序的多叉树,用于存储字符串,适合前缀匹配查询。

  1. 每个节点代表一个字符
  2. 根节点不存储字符
  3. 路径代表一个字符串的前缀 image.png

Patricia Trie 压缩前缀树

是什么:是前缀树的变种,通过压缩路径使得树的高度不至于过高。

  1. 每个节点可以存储字符串,而不是单个字符。
  2. 如果树没有分叉,则可压缩成一个节点。

image.png

⭐️前缀树的特点

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

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

  4. 插入:O(n)
  5. 查找:O(n)
  6. 删除:O(n)

⭐️前缀树和merkle树的对比

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

⭐️前缀树的应用

  1. 搜索引擎的自动补全
  2. web服务器的路由匹配
  3. 大量字符串的压缩存储
点赞 0
收藏 0
分享

0 条评论

请先 登录 后评论