第一范文网 - 专业文章范例文档资料分享平台

2016最新广工anyview数据结构答案

来源:用户分享 时间:2025/8/8 0:56:17 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

} BiTNode, *BiTree;

可用栈类型Stack的相关定义: typedef struct {

struct BiTNode *ptr; // 二叉树结点的指针类型 int tag; // 0..1

} SElemType; // 栈的元素类型 Status InitStack(Stack &S); Status StackEmpty(Stack S);

Status Push(Stack &S, SElemType e); Status Pop(Stack &S, SElemType &e); Status GetTop(Stack S, SElemType &e); **********/

void PostOrder(BiTree T, void (*visit)(TElemType)) /* 使用栈,非递归后序遍历二叉树T, */ /* 对每个结点的元素域data调用函数visit */

{

if(T==NULL)return ; Stack s; InitStack(s); SElemType e; e.ptr=T; e.tag=0; while(1){

while(e.ptr!=NULL){Push(s,e); e.ptr=e.ptr->lchild; }

while(StackEmpty(s)==FALSE){ Pop(s,e);

if(e.ptr->rchild!=NULL){ if(e.tag==0) {

e.tag=1;Push(s,e); e.ptr=e.ptr->rchild; e.tag=0;break; } }

visit(e.ptr->data);} if(StackEmpty(s))break; } } /**********

【题目】二叉树采用三叉链表的存储结构,试编写 不借助栈的非递归中序遍历算法。 三叉链表类型定义: typedef struct TriTNode { TElemType data;

struct TriTNode *parent, *lchild, *rchild; } TriTNode, *TriTree; **********/

void InOrder(TriTree PT, void (*visit)(TElemType)) /* 不使用栈,非递归中序遍历二叉树PT, */ /* 对每个结点的元素域data调用函数visit */ {

TriTree p=PT, pr; while(NULL != p) {

if (p->lchild != NULL) { p = p->lchild; //寻找最左下结点 } else {

visit(p->data); //找到最左下结点并访问

搜索更多关于: 2016最新广工anyview数据结构答案 的文档
2016最新广工anyview数据结构答案.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c1595r5gagb10e609m87w9sc9l3ppnv019zb_3.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top