热门

最新

红包

立Flag

投票

同城

我的

发布
2202_75435350
科院212 橙子晨
4 年前
true2202_75435350

二叉树的遍历
#include<stdio.h>
#include<malloc.h>
#include<stdlib.h>
typedef struct BiTNode
{
char data;
struct BiTNode *lchild,*rchild;
}BiTNode,*BiTree;
int CreateBiTree(BiTree &T)
{
char ch;
scanf("c",&ch);
if(ch=='#') T=NULL;
else
{
if(!(T=(BiTNode *)malloc(sizeof(BiTNode))));
return -1;
T->data=ch;
CreateBiTree(T->lchild);
CreateBiTree(T->rchild);
}
return 1;
}
int Preorder(BiTree T,int(*Element)(char e))
{
if(T)
{
Element(T->data);
Preorder(T->lchild,Element);
Preorder(T->rchild,Element);
}
else
{
printf(" ");
}
return 0;
}
int Inorder(BiTree T,int(*Element)(char e))
{
if(T)
{
Inorder(T->lchild,Element);
Element(T->data);
Inorder(T->rchild,Element);
}
else
{
printf(" ");
}
return 0;
}
int Postorder(BiTree T,int(*Element)(char e))
{
if(T)
{
Postorder(T->lchild,Element);
Postorder(T->rchild,Element);
Element(T->data);
}
else
{
printf(" ");
}
return 0;
}

CSDN App 扫码分享
分享
评论
点赞
打赏
  • 复制链接
  • 举报
下一条:
插入排序:从左向右遍历,依次选取数值,从数值的左侧从右向左遍历,选择第一个比他小的数值的右侧插入该数值,其他数值依次向后赋值''a =[7,1,3,2,6,54,4,4,5,8,12,34]for i in range(0,len(a)-1): temp=a[i+1] j=i+1 while j>=0 and temp<a[j-1]: j=j-1 print(j) if j>=-1: k= i+1 while k>=j: a[k]=a[k-1] k=k-1 print(a) a[j]=tempprint(a)
立即登录