数据结构:

  struct CSNode;

  typedef struct CSNode * PCSNode;

  struct CSNode

  {

    DataType info;

    PCSNode lchild;

    PCSNode rsibling;

  };

  typedef struct CSNode *CSTree;    //树定义为根结点的指针

程序代码:

  PCSNode parent_cstree(PCSNode p,CSTree t)

  {

    PCSNode q,r;

    if(p == NULL)

      return NULL;

    if(p == t || t == NULL)

      return NULL;

    q = t->lchild;

    while(q != NULL)

    {

      if(q == p)

        return t;

      r = parent_cstree(p,q);

      if(r != NULL)

        return r;

      q = q->rsibling;

    }

    return NULL;

  }

转载于:https://www.cnblogs.com/maomaohhmm/archive/2012/09/10/2679180.html

求树中某结点的父结点(长子-兄弟表示法)相关推荐

  1. 将森林转换为对应的二叉树,若在二叉树中,结点u时结点v的父结点的父结点,则在原来的森林中,u和v可能具有的关系是( )

    将森林转换为对应的二叉树,若在二叉树中,结点u时结点v的父结点的父结点,则在原来的森林中,u和v可能具有的关系是( ① ② ) ① 父子关系 ② 兄弟关系 ③ u的父结点与v的父结点是兄弟关系 森林与 ...

  2. 7-31 二叉树查找结点及父结点

    编写程序在二叉树中查找给定结点及父结点.二叉树结点的数据域值不等于0的整数. 输入格式: 输入第1行为一组用空格间隔的整数,表示带空指针信息的二叉树先根序列,其中空指针用0表示.例如1 5 8 0 0 ...

  3. 算法分析课设(四)采用分治法求树中任意两点之间距离小于K的点对及路径

    免责声明 本文仅为个人学习笔记,请谨慎参考,如有错误欢迎批评指正. 参考文章 第一篇文章主要看树的重心的部分 第二篇文章才是和本题完全一致 https://blog.csdn.net/a_foreve ...

  4. 程序员面试题精选100题(48)-二叉树两结点的最低共同父结点[数据结构]

    题目:二叉树的结点定义如下: struct TreeNode { int m_nvalue; TreeNode* m_pLeft; TreeNode* m_pRight; }; 输入二叉树中的两个结点 ...

  5. 程序员面试100题之五:二叉树两个结点的最低共同父结点

    题目:二叉树的结点定义如下: struct TreeNode { int m_nvalue; TreeNode* m_pLeft; TreeNode* m_pRight; }; 输入二叉树中的两个结点 ...

  6. 二叉树两个结点的最低公共父结点 【微软面试100题 第七十五题】

    题目要求: 输入二叉树中的两个结点,输出这两个及诶单在数中最低的共同父结点. 题目分析: 还有一种情况:如果输入的两个结点中有一个或两个结点不在二叉树中,则输出没有共同父结点: 因此,可以在程序中定义 ...

  7. 求二叉树中结点个数代码java_求二叉树中第K层结点的个数

    一,问题描述 构建一棵二叉树(不一定是二叉查找树),求出该二叉树中第K层中的结点个数(根结点为第0层) 二,二叉树的构建 定义一个BinaryTree类来表示二叉树,二叉树BinaryTree 又是由 ...

  8. 【Vegas原创】将treeview父结点的链接改为折叠事件

    详细的Hashtable方法treeview遍历请参阅: http://www.cnblogs.com/vegaslee/archive/2008/04/17/1158321.html 现主要分享如何 ...

  9. 求二叉树中从根结点到叶子结点的路径

    /** *    实验题目: *        求二叉树中从根结点到叶子结点的路径 *    实验目的: *        掌握二叉树遍历算法的应用,熟练使用先序.中序.后序3种递归 *    和非递 ...

最新文章

  1. 稀疏矩阵的压缩存储与转置
  2. 网站建设要重视与客户之间的沟通
  3. Xcode 8 GM 编译缺失 /Users/usr/lib/libresolv.9.dylib
  4. CentOS6.5 搭建 LNMP (linux + nginx + mysql + php)
  5. Linux系统编程38:多线程之什么是线程同步以及条件变量函数
  6. 支付宝的个人捐赠功能
  7. MySQL高级知识(五)——索引分析
  8. caffe教程笔记《Solver》
  9. 微信小程序|Springboot+Node+Vue实现学科竞赛管理系统
  10. Excel笔记(1) Excel常用基础功能
  11. spring boot面试问题集锦
  12. python水印_使用Python PIL 给图片添加水印
  13. 中华人民共和国民法典
  14. U3D学习项目一:2D横版小狐狸闯关游戏(代码部分二)
  15. uniapp实现小程序预览、保存、转发pdf/word/excel等文件
  16. 医疗电子平台选择:FPGA、ARM、X86、DSP还是GPU
  17. apache服务讲解
  18. Android进阶知识树——Android Handler消息机制
  19. 大数据Hadoop之——总结篇
  20. 计算物理学(数值分析)上机实验答案5、常微分方程初值问题的数值解法

热门文章

  1. [2016百度之星 - 初赛(Astar Round2A)]Snacks
  2. MLFlow︱机器学习工作流框架:MLFlow docker 实践(二)
  3. python︱Anaconda安装、简介(安装报错问题解决、Jupyter Notebook)
  4. 手把手教你在Windows环境下升级R
  5. [WebKit]浏览器的加载与页面性能优化
  6. 关于maven modules开发时候,eclipse的dubug模式不能找到源代码
  7. 分享10个创新的扁平风格的简历页面设计
  8. tooltip 提示多行显示
  9. VC多线程编程(转)
  10. eBPF for Windows开源项目