随笔分类 -  Algo

摘要:环境 Time 2022-04-21 Rust 1.60.0 前言 说明 基于标准库来学习各种数据结构,并不是从头实现数据结构,未考虑实现性能。 相比较二叉树,二叉搜索树的左节点都比父节点小,右节点都比父节点大。 基于二叉树来实现二叉搜索树,实现删除方法。 示例 引入模块 pub mod binar 阅读全文
posted @ 2022-07-30 23:21 jiangbo4444 阅读(62) 评论(0) 推荐(0) 编辑
摘要:环境 Time 2022-04-21 Rust 1.60.0 前言 说明 基于标准库来学习各种数据结构,并不是从头实现数据结构,未考虑实现性能。 相比较二叉树,二叉搜索树的左节点都比父节点小,右节点都比父节点大。 基于二叉树来实现二叉搜索树,先实现插入和检索方法。 示例 引入模块 pub mod b 阅读全文
posted @ 2022-07-30 23:20 jiangbo4444 阅读(82) 评论(0) 推荐(0) 编辑
摘要:环境 Time 2022-04-21 Rust 1.60.0 前言 说明 基于标准库来学习各种数据结构,并不是从头实现数据结构,未考虑实现性能。 实现了二叉树的前序、中序和后序遍历的测试。 示例 测试模块 mod tests { use super::*; use crate::tree::Node 阅读全文
posted @ 2022-07-30 23:18 jiangbo4444 阅读(89) 评论(0) 推荐(0) 编辑
摘要:环境 Time 2022-04-21 Rust 1.60.0 前言 说明 基于标准库来学习各种数据结构,并不是从头实现数据结构,未考虑实现性能。 实现了二叉树的前序、中序和后序遍历。 示例 引入模块 pub mod binary_tree; 结构定义 use super::{NodeRef, Tre 阅读全文
posted @ 2022-07-30 23:17 jiangbo4444 阅读(151) 评论(0) 推荐(0) 编辑
摘要:环境 Time 2022-04-21 Rust 1.60.0 前言 说明 基于标准库来学习各种数据结构,并不是从头实现数据结构,未考虑实现性能。 特点 学习树的过程中,一般先学简单的二叉树,前面已经学习过二叉树了。 各种树越来越多,需要将代码分布到不同文件去。 示例 操作定义 pub trait T 阅读全文
posted @ 2022-07-30 23:16 jiangbo4444 阅读(74) 评论(0) 推荐(0) 编辑
摘要:环境 Time 2022-04-15 Rust 1.60.0 前言 说明 基于标准库来学习各种数据结构,并不是从头实现数据结构,未考虑实现性能。 特点 二叉堆的极值在最前面,可能是最大值或者最小值,又叫大顶堆或者小顶堆。 示例 new fn main() { let mut heap = Binar 阅读全文
posted @ 2022-07-30 23:15 jiangbo4444 阅读(100) 评论(0) 推荐(0) 编辑
摘要:环境 Time 2022-04-15 Rust 1.60.0 前言 说明 基于标准库来学习各种数据结构,并不是从头实现数据结构,未考虑实现性能。 特点 二叉堆的极值在最前面,可能是最大值或者最小值,又叫大顶堆或者小顶堆。 标准库中已经内置了一个二叉堆(BinaryHeap),这里只做练习使用。 堆的 阅读全文
posted @ 2022-07-30 23:14 jiangbo4444 阅读(63) 评论(0) 推荐(0) 编辑
摘要:环境 Time 2022-04-15 Rust 1.60.0 前言 说明 基于标准库来学习各种数据结构,并不是从头实现数据结构,未考虑实现性能。 特点 二叉堆的极值在最前面,可能是最大值或者最小值,又叫大顶堆或者小顶堆。 标准库中已经内置了一个二叉堆(BinaryHeap),这里只做练习使用。 示例 阅读全文
posted @ 2022-07-30 23:13 jiangbo4444 阅读(113) 评论(0) 推荐(0) 编辑
摘要:环境 Time 2022-04-15 Rust 1.60.0 前言 说明 基于标准库来学习各种数据结构,并不是从头实现数据结构,未考虑实现性能。 特点 二叉堆的极值在最前面,可能是最大值或者最小值,又叫大顶堆或者小顶堆。 标准库中已经内置了一个二叉堆(BinaryHeap),这里只做练习使用。 示例 阅读全文
posted @ 2022-07-30 23:12 jiangbo4444 阅读(57) 评论(0) 推荐(0) 编辑
摘要:环境 Time 2022-04-15 Rust 1.60.0 前言 说明 基于标准库来学习各种数据结构,并不是从头实现数据结构,未考虑实现性能。 特点 二叉堆的极值在最前面,可能是最大值或者最小值,又叫大顶堆或者小顶堆。 标准库中已经内置了一个二叉堆(BinaryHeap),这里只做练习使用。 示例 阅读全文
posted @ 2022-07-30 23:11 jiangbo4444 阅读(60) 评论(0) 推荐(0) 编辑
摘要:环境 Time 2022-04-15 Rust 1.60.0 前言 说明 基于标准库来学习各种数据结构,并不是从头实现数据结构,未考虑实现性能。 特点 二叉堆的极值在最前面,可能是最大值或者最小值,又叫大顶堆或者小顶堆。 标准库中已经内置了一个二叉堆(BinaryHeap),这里只做练习使用。 示例 阅读全文
posted @ 2022-07-30 23:10 jiangbo4444 阅读(70) 评论(0) 推荐(0) 编辑
摘要:环境 Time 2022-04-12 Rust 1.60.0 前言 说明 基于标准库来学习各种数据结构,并不是从头实现数据结构,未考虑实现性能。 特点 相比较二叉树,二叉搜索树的左节点都比父节点小,右节点都比父节点大。 使用迭代的方式获取二叉搜索树中的最大和最小值。 示例 节点定义 type Nod 阅读全文
posted @ 2022-06-30 09:16 jiangbo4444 阅读(38) 评论(0) 推荐(0) 编辑
摘要:环境 Time 2022-04-11 Rust 1.60.0 前言 说明 基于标准库来学习各种数据结构,并不是从头实现数据结构,未考虑实现性能。 特点 相比较二叉树,二叉搜索树的左节点都比父节点小,右节点都比父节点大。 使用迭代的方式查询二叉搜索树中的最大和最小值。 示例 节点定义 type Nod 阅读全文
posted @ 2022-06-30 09:15 jiangbo4444 阅读(65) 评论(0) 推荐(0) 编辑
摘要:环境 Time 2022-04-12 Rust 1.60.0 前言 说明 基于标准库来学习各种数据结构,并不是从头实现数据结构,未考虑实现性能。 特点 相比较二叉树,二叉搜索树的左节点都比父节点小,右节点都比父节点大。 使用迭代的方式删除二叉搜索树中的某个节点。 示例 节点定义 type NodeR 阅读全文
posted @ 2022-06-30 09:14 jiangbo4444 阅读(62) 评论(0) 推荐(0) 编辑
摘要:环境 Time 2022-04-11 Rust 1.60.0 前言 说明 基于标准库来学习各种数据结构,并不是从头实现数据结构,未考虑实现性能。 特点 相比较二叉树,二叉搜索树的左节点都比父节点小,右节点都比父节点大。 使用迭代的方式来实现二叉搜索树的节点检索。 示例 节点定义 type NodeR 阅读全文
posted @ 2022-06-30 09:13 jiangbo4444 阅读(55) 评论(0) 推荐(0) 编辑
摘要:环境 Time 2022-04-11 Rust 1.60.0 前言 说明 基于标准库来学习各种数据结构,并不是从头实现数据结构,未考虑实现性能。 特点 相比较二叉树,二叉搜索树的左节点都比父节点小,右节点都比父节点大。 使用递归的方式来实现二叉搜索树的节点检索。 示例 节点定义 type NodeR 阅读全文
posted @ 2022-06-30 09:09 jiangbo4444 阅读(36) 评论(0) 推荐(0) 编辑
摘要:环境 Time 2022-04-11 Rust 1.60.0 前言 说明 基于标准库来学习各种数据结构,并不是从头实现数据结构,未考虑实现性能。 特点 相比较二叉树,二叉搜索树的左节点都比父节点小,右节点都比父节点大。 使用迭代的方式来实现二叉搜索树的节点插入。 示例 节点定义 type NodeR 阅读全文
posted @ 2022-06-30 09:08 jiangbo4444 阅读(65) 评论(0) 推荐(0) 编辑
摘要:环境 Time 2022-04-11 Rust 1.60.0 前言 说明 基于标准库来学习各种数据结构,并不是从头实现数据结构,未考虑实现性能。 特点 相比较二叉树,二叉搜索树的左节点都比父节点小,右节点都比父节点大。 使用递归的方式来实现二叉搜索树的节点插入。 示例 节点定义 type NodeR 阅读全文
posted @ 2022-06-30 09:06 jiangbo4444 阅读(48) 评论(0) 推荐(0) 编辑
摘要:环境 Time 2022-04-10 Rust 1.60.0 前言 说明 基于标准库来学习各种数据结构,并不是从头实现数据结构。 特点 之前使用递归的方式实现了二叉树的后序遍历,这里使用迭代的方式。 示例 节点定义 type NodeRef<T> = Option<Box<Node<T>>>; st 阅读全文
posted @ 2022-06-30 09:04 jiangbo4444 阅读(40) 评论(0) 推荐(0) 编辑
摘要:环境 Time 2022-04-06 Rust 1.59.0 前言 说明 基于标准库来学习各种数据结构,并不是从头实现数据结构。 特点 二叉树是一个节点最多有两个分支的树。到目前为止,标准库还没有内置支持。 示例 节点定义 type NodeRef<T> = Option<Box<Node<T>>> 阅读全文
posted @ 2022-06-30 09:02 jiangbo4444 阅读(51) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示