找回密码
 注册
关于网站域名变更的通知
查看: 365|回复: 1
打印 上一主题 下一主题

UNIX编程三部曲之第一曲在内存中构建10叉非完全存储数

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-9-26 14:56 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
题目:在内存中构建一个10叉非完全树T10,树的高度为7,叶子节点的高度差最多为1,将该树T10存储到一个树存储文件Ftree中去。编写读树文件Ftree的程序,将树读入到内存中来,并且检验树的正确性。6 P/ x# R9 f, b% r
性能分析说明:
$ {7 @8 l0 S4 ^. \1.空间复杂度" m4 V! @% @1 G+ |9 |8 p
2.文件大小
8 L5 @, @% ]# }! b& x: ~8 _2 d3.内存重构树的时间。
$ E( v. X/ d  y- Q7 z
0 I# `' y( a1 c) x6 H. m$ I( C( [

9 ~/ O" l  J" o7 S7 e) p源码上上来,振振精神4 {4 V7 s0 j/ q) ?
4 R/ M- t% u9 a& e8 T. }
1.程序源码2 h* ]+ {: A, j* S

( j$ k5 Q! a2 R1 Y(1)创建10叉非完全数的程序源码
# M- z' M6 q4 F3 G: r  l- ]' ~
& z) m9 H0 u. V4 D
  • //ProgARM one:creat the tree
  • #include<stdio.h>
  • #include<stdlib.h>
  • #define TEN 10
  • #define MAXLEVEL 8
  • typedef structTreeNode *TenTree;
  • struct TreeNode{
  •     int     data;
  •     TenTree   children[TEN];
  • }NTree;
  • int num = 1;
  • voidpreorder(TenTree ptr)
  • {
  •     if (ptr){
  •         printf("%d ",ptr->data);
  •         for (int i = 0; i < TEN; i++){
  •             preorder(ptr->children);
  •         }
  •     } else {
  •         printf("0 ");
  •     }
  • }
  • TenTreeCreatTree(int level)
  • {
  •     TenTree T;
  •     if (level == MAXLEVEL){
  •         T = NULL;
  •         return T;
  •     }
  •     T = (TenTree)malloc(sizeof(NTree));
  •     T->data = num++;
  •     for (int i = 0; i < TEN; i++){
  •         T->children = CreatTree(level+1);
  •     }
  •     return T;
  • }
  • int main()
  • {
  •     TenTree T;
  •     T = CreatTree(1);
  •     preorder(T);
  •     return 0;
  • }
    4 R) F/ `5 g: c
                                                   
游客,如果您要查看本帖隐藏内容请回复
' h- n$ s  b/ U" v. X
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-8-24 00:37 , Processed in 0.156250 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表