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

Method levelorder

publication/code/chapter08/rbtree.rs:182–198  ·  view source on GitHub ↗
(&self)

Source from the content-addressed store, hash-verified

180 }
181
182 unsafe fn levelorder(&self) {
183 let size = self.size(0);
184 let mut q = Queue::new(size);
185
186 let _r = q.enqueue(self.clone());
187 while !q.is_empty() {
188 let front = q.dequeue().unwrap();
189 println!("key: {:?}", front.key);
190
191 if !front.left.is_null() {
192 let _r = q.enqueue(&(*front.left));
193 }
194 if !front.right.is_null() {
195 let _r = q.enqueue(&(*front.right));
196 }
197 }
198 }
199}
200
201// 红黑树定义

Callers 1

orderFunction · 0.45

Calls 4

sizeMethod · 0.45
enqueueMethod · 0.45
is_emptyMethod · 0.45
dequeueMethod · 0.45

Tested by

no test coverage detected