12.完全二叉树的顺序存储表示
来源:互联网 发布:淘宝如何解除快捷支付 编辑:程序博客网 时间:2024/06/15 10:44
////////////////////////////////////////#include<stdio.h>#include<stdlib.h>#define OK 0#define ERROR 1typedef char ElemType;FILE *fp;void InitFile(){fp = fopen("data.txt", "r+");if (!fp) exit(ERROR);return;}typedef bool Status;//////////////////////////////////////////完全二叉树的顺序存储表示typedef struct{ElemType *data;int l;}FBTree,*FBTreePtr;Status CreateFBTree(FBTree &T){fscanf_s(fp, "%d", &T.l);// 按 数组 顺序 初始化完全二叉树...if (!(T.data = (ElemType *)malloc(sizeof(ElemType)*(T.l+1)))) return ERROR;for (int i = 1; i <= T.l; i++) fscanf_s(fp, "%c", T.data + i);return OK;}Status DestroyFBTree(FBTree &T){free(T.data);return OK;}int Get_lchild(FBTree T,int i)//得到 左孩子的数组索引{return (2 * i > T.l) ? -1 : 2 * i;}int Get_rchild(FBTree T, int i){return (2 * i +1 > T.l) ? -1 : 2 * i +1;}Status InorderTree(FBTree T,int i){if (i <= T.l){InorderTree(T, 2 * i);printf("%c ", T.data[i]);InorderTree(T, 2 * i + 1);}return OK;}Status PreorderTree(FBTree T,int i){if (i <= T.l){printf("%c ", T.data[i]);PreorderTree(T, 2 * i);PreorderTree(T, 2 * i + 1);}return OK;}Status PostorderTree(FBTree T, int i){if (i <= T.l){PostorderTree(T, 2 * i);PostorderTree(T, 2 * i + 1);printf("%c ", T.data[i]);}return OK;}int main(){InitFile();FBTree A;CreateFBTree(A);printf("中序遍历:\n");InorderTree(A, 1);printf("\n先序遍历:\n");PreorderTree(A, 1);printf("\n后序遍历:\n");PostorderTree(A, 1);putchar(10);fclose(fp);return 0;}
0 0
- 12.完全二叉树的顺序存储表示
- 完全二叉树的顺序存储
- 二叉树的表示链式表示和顺序存储3.0
- 第六章(1).二叉树的顺序存储表示
- 顺序存储完全二叉树的基本操作
- 由顺序方式存储的完全二叉树进行重建
- 二叉树的二叉线索存储表示
- 基于完全二叉树木形成的二叉树顺序存储-数据结构(13)
- 二叉树顺序表示的实现
- 二叉树的顺序表示和实现
- 二叉树的顺序存储
- 二叉树的顺序存储
- 二叉树的顺序存储
- 二叉树的顺序存储
- 二叉树的顺序存储
- 二叉树的顺序存储
- 二叉树的顺序存储
- 二叉树的顺序存储
- 推送
- linux centos yum 安装 mysql
- ActiveMQ
- jdbc在操作oracle海量数据的时候用ResultSet获取所有的返回数据出现内存溢出(转)
- centOS下制作RPM包
- 12.完全二叉树的顺序存储表示
- 课件下载网站已更换,请测试,有问题,请反馈。
- 记事本窗口最小化问题
- window.url.createobjecturl 兼容多个浏览器(IE,google,360,Safari,firefox)
- oracle 的dbms_application_info包
- RCP中获得View
- Android App接入微信开放平台注意事项
- sqlite判断表是否存在
- Qt Style Sheet自定义QSlider