| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 839 人关注过本帖
标题:把括号形式的二叉树转换成链表形式输出
只看楼主 加入收藏
wei_fan
Rank: 1
等 级:新手上路
帖 子:52
专家分:0
注 册:2008-10-16
结帖率:100%
收藏
 问题点数:0 回复次数:0 
把括号形式的二叉树转换成链表形式输出
#include<stdio.h>
#include<malloc.h>
#include<string.h>
#define n 10
#define null 0
typedef struct
{
 char data[n];
 int top;
}seqstack;
typedef struct node2
{
 char data;
 struct node2 *lchild;
 struct node2 *rchild;
}btnode;
void main()
{
   btnode *s[n],*b,*p=null;
   int top=-1,tag,j;
   char ch,str[n];
   printf("输入:\n");
     for(j=0;j<n;j++)
        str[j]=getchar();
         ch=str[0];
        while(ch!='\n')
        {
            switch(ch)
            {
             case'(':top++;s[top]=p;tag=1;break;
             case')':top--;break;
              case',':tag=2;break;
               default:p=(btnode *)malloc(sizeof(btnode));
               p->data=ch;
               p->lchild=p->rchild=null;
               if(b==null) b=p;
               else
               {
                      switch(tag)
                      {
                           case 1:s[top]->lchild=p;break;
                             case 2:s[top]->rchild=p;break;
                      }
               }
            }
              j++;ch=str[j];
        }
        if(b!=null)
        printf("%c",b->data);
        else if(b->lchild!=null)
        {printf("%c",p->lchild->data);p=p->lchild;}
        else{printf("%c",p->rchild->data);p=p->rchild;}

}大侠帮忙看看那错了?
搜索更多相关主题的帖子: 输出 形式 括号 二叉树 链表 
2008-11-03 20:16
快速回复:把括号形式的二叉树转换成链表形式输出
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.079201 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved