当前位置:   article > 正文

二叉树查找(c++)_c++二叉树快速查找

c++二叉树快速查找
  1. #include<iostream>
  2. using namespace std;
  3. typedef struct BiTNode
  4. {
  5. char data;
  6. struct BiTNode* lchild, * rchild;
  7. }BiTNode, * BiTree;
  8. void CreatBiTree(BiTree& T, char e)
  9. {
  10. if (T == NULL)
  11. {
  12. T = new BiTNode;
  13. T->data = e;
  14. T->lchild = NULL;
  15. T->rchild = NULL;
  16. }
  17. else
  18. {
  19. if (T->data < e)
  20. CreatBiTree(T->rchild, e);
  21. else
  22. CreatBiTree(T->lchild, e);
  23. }
  24. }
  25. void InOrder(BiTree T)
  26. {
  27. if (T)
  28. {
  29. InOrder(T->lchild);
  30. cout << T->data;
  31. InOrder(T->rchild);
  32. }
  33. }
  34. void Find_k(BiTree T, char a)
  35. {
  36. if (!T)
  37. cout << "失败" << endl;
  38. else if (T->data == a)
  39. cout << "成功" << endl;
  40. else if (T->data < a)
  41. Find_k(T->rchild, a);
  42. else if (T->data > a)
  43. Find_k(T->lchild, a);
  44. }
  45. int main()
  46. {
  47. BiTree T;
  48. T = NULL;
  49. int n;
  50. cin >> n;
  51. char e;
  52. while (n--)
  53. {
  54. cin >> e;
  55. CreatBiTree(T, e);
  56. }
  57. InOrder(T);
  58. Find_k(T, a);
  59. return 0;
  60. }

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/245849
推荐阅读
相关标签
  

闽ICP备14008679号