Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1093967
  • 博文数量: 646
  • 博客积分: 288
  • 博客等级: 二等列兵
  • 技术积分: 5375
  • 用 户 组: 普通用户
  • 注册时间: 2010-07-08 14:33
个人简介

为了技术,我不会停下学习的脚步,我相信我还能走二十年。

文章分类

全部博文(646)

文章存档

2014年(8)

2013年(134)

2012年(504)

分类:

2012-06-14 13:00:41

原文地址:红黑树3 作者:platinaluo

demo.c

  1. #include   
  2. #include   
  3. #include "rbtree.h"  
  4. int main(int argc, char *argv[])  
  5. {  
  6.     int i;  
  7.     struct rb_root root;  
  8.     root.rb_node = NULL;  
  9.     for (i = 2; i < argc; i++ ) {  
  10.         struct rb_key rb_key;  
  11.         rb_key.key = atol(argv[i]);  
  12.         struct rb_node *node = rb_newnode(&rb_key);  
  13.         if (node) {  
  14.             rb_insert(node, &root);  
  15.         }  
  16.     }  
  17.     rb_traverse(root.rb_node);  
  18.     printf("/n");  
  19.     struct rb_key rb_key;  
  20.     rb_key.key = atol(argv[1]);  
  21.     struct rb_node *node = rb_search(&root, rb_key);  
  22.     if (node) {  
  23.         printf("key = %d/n", node->rb_key.key);  
  24.         rb_erase(node, &root);  
  25.         rb_traverse(root.rb_node);  
  26.         printf("/n");  
  27.     } else {  
  28.         printf("%d is not found/n", rb_key.key);  
  29.     }  
  30.     return 0;  
  31. }  

参考文献:

[1] 算法导论

[2] 一篇讨论红黑树的好文章: 

阅读(326) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~