gj.c
来自「几种排序算法的C语言实现 用函数实现如下算法: (1) 直接插入排序, 希尔」· C语言 代码 · 共 59 行
C
59 行
用函数实现如下算法:
(1) 建立二叉排序树(或插入新结点)
(2) 插入、删除结点
(3) 前序、中序、后序、层次遍历二叉树
(4) 中序遍历的非递归算法
(5) 在二叉树中查找给定关键字
(6) 交换各结点的左右子树
(7) 求二叉树的深度、叶子结点树
(8) 输出树型结构
void creatbtree(int *btree,int *nodelist,int len)
{
int i;
int level;
btree[1]=nodelist[1];
for(i=2;i<=len;i++)
{
level=1;
while(!btree[level])
{
if(nodelist[i]<btree[level])
level=level*2;
else
level=level*2+1;
}
btree[level]=nodelist[i];
}
}
void main()
{
int i,index;
int data;
int btree[16];
int nodelist[16];
printf("\nPlease input the elements of binary tree(Exit for 0):\n");
index=1;
scanf("%d",&data);
while(!data)
{
nodelist[index]=data;
index++;
scanf("%d",&data);
}
for(i=1;i<16;i++)
btree[i]=0;
creatbtree(btree,nodelist,index);
printf("\nThe bianry tree is:\n");
for(i=1;i<16;i++)
printf("%2d":[%d] ",i,btree[i]);
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?