一个五年前的项目. 昨天有小伙伴提起说红黑树面试, 恰好把当年的库整出来修复下编译错误.
猜猜五年老项目需要修复什么东西才能过编译?
feature(plugin)
不需要引入了. 是唯一一个编译错误, 其他都是 warningrand
更新版本, 去掉了Rand
, 使用方法改变改为impl Distribution<T> for Standard
gen_weighted_bool
改为gen_ratio
try!
宏编译 warning, 用foo?
语法替代SipHasher
deprecated,改DefaultHasher
- 更新
vec_map
版本号, 无代码修改 - 使用 rust edition 2018, 去掉
extern crate
语句
如上, 如果不更新依赖的话, 几乎不需要修改, 还能通过编译. 感叹的确是 1.0 后时代. 记得当年 slice_to
漫天飞的时代, 一气之下弃坑了. 直到 Index
稳定下来.
大概有如下数据结构实现:
Bag
Stack
Queue
Deque
PriorityQueue
HashSearchTable
Tries
SuffixTree
SplayTree
Rope
SkipList
RedBlackTree
KdTree
UnionFind
其中部分数据结构有简单的可视化, 比较直观, 适合教学.
大部分数据结构都不是最优实现. 做概念展示用.
Ext Link: https://github.com/andelf/rust-adivon
1
共 2 条评论, 1 页
评论区
写评论赞啊!我也想写一个
666