垠的备忘录

Share this post

User's avatar
垠的备忘录
AVL tree 和 B tree
Copy link
Facebook
Email
Notes
More

AVL tree 和 B tree

Yin Wang's avatar
Yin Wang
Feb 26, 2024
∙ Paid
7

Share this post

User's avatar
垠的备忘录
AVL tree 和 B tree
Copy link
Facebook
Email
Notes
More
1
Share

基础班最新的练习是:实现一个纯函数式的 AVL 平衡树。

在大学里上数据结构课,写 AVL 树还是挺烧脑的,过后一般很快就忘了怎么写。而数据结构课,一般是要已经上过了入门编程课之后,才能上的,一般是在大二的时候。

我的基础班上,零基础的同学到了第 5 课就写这种东西,而且还是“纯函数”的版本。也就是说,当新的 key-value 加进去之后,原来的树还在,并没有被修改。只是产生了一棵新的 AVL 树,里面含有新的 key-value。这样保留了所有的历史数据,却又没有特别浪费存储空间。这种数据结构,在通常的数据结构领域,叫做 persistent data structure,曾经有一段时间这个领域比较热门,而且它已经被大量用在了“云存储”等实用领域。

这种东西在一般公司里,有多少程序员能写出来?我心里是比…

This post is for paid subscribers

Already a paid subscriber? Sign in
© 2025 Yin Wang
Privacy ∙ Terms ∙ Collection notice
Start writingGet the app
Substack is the home for great culture

Share

Copy link
Facebook
Email
Notes
More