(&self)
| 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 | // 红黑树定义 |