#stack #node #push #pop #containing

堆栈

一个用于在 Rust 中使用堆栈数据结构的简单库

7 个版本

0.2.5 2021 年 7 月 16 日
0.2.4 2021 年 7 月 12 日
0.1.1 2021 年 7 月 10 日

2055 位在 数据结构

自定义许可

16KB
177

Stacking

pipeline status

stacking 是一个模块,包含用于在 Rust 中构建堆栈的工具

Stack

stacking 包含一个内置的 Stack。它只支持 poppushlen 作为操作

示例

use stacking::stacks::Stack;
                                                                                                     
let mut stack: Stack<i32> = Stack::new();
assert_eq!(stack.len(), 0);
stack.push(4);
assert_eq!(stack.len(), 1);
assert_eq!(stack.pop(), Some(4));

此简单示例创建了一个堆栈,将 4 添加到其中,然后再次弹出。

节点

stacking 还包含一个 Node。一个 Node 可以用来构建自定义堆栈或其他具有特定顺序的数据结构。

示例

use stacking::nodes::Node;
                                                                                                     
let mut n1: Node<i32> = Node::new(None, None, 15);
let mut n2: Node<i32> = Node::new(None, Some(n1.clone()), 14);
assert_eq!(n1.val, 15);
assert_eq!(n2.val, 14);

这将创建两个相互引用的节点,以创建在 n2 之后是 n1 的顺序。

无运行时依赖项