MCPcopy Create free account
hub / github.com/QMHTMY/RustBook / contains

Method contains

publication/code/chapter08/bst.rs:180–202  ·  view source on GitHub ↗

节点查询

(&self, key: &T)

Source from the content-addressed store, hash-verified

178
179 // 节点查询
180 fn contains(&self, key: &T) -> bool {
181 match &self.key {
182 None => false,
183 Some(k) => {
184 // 比较 key 值,并判断是否继续递归查找
185 match k.cmp(key) {
186 Equal => true, // 找到数据
187 Greater => { // 在左子树搜索
188 match &self.left {
189 Some(node) => node.contains(key),
190 None => false,
191 }
192 },
193 Less => {
194 match &self.right { // 在右子树搜索
195 Some(node) => node.contains(key),
196 None => false,
197 }
198 },
199 }
200 },
201 }
202 }
203
204 fn min(&self) -> (Option<&T>, Option<&U>) {
205 // 最小值一定在最左侧

Callers 3

delete_spaces2Function · 0.45
rec_mc2Function · 0.45
rec_mc1Function · 0.45

Calls 1

cmpMethod · 0.45

Tested by

no test coverage detected