首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和流程图,从供选择的答案中选出应填入流程图(n)处的字句写在对应栏内。 [说明] 以下是某图像二元树存储与还原算法的主要思想描述。 设一幅2n×2n的二值图像,以:“1”表示黑像素点,以“0”表示白像素点。图像二元树结构表示
阅读以下说明和流程图,从供选择的答案中选出应填入流程图(n)处的字句写在对应栏内。 [说明] 以下是某图像二元树存储与还原算法的主要思想描述。 设一幅2n×2n的二值图像,以:“1”表示黑像素点,以“0”表示白像素点。图像二元树结构表示
admin
2009-02-15
62
问题
阅读以下说明和流程图,从供选择的答案中选出应填入流程图(n)处的字句写在对应栏内。
[说明]
以下是某图像二元树存储与还原算法的主要思想描述。
设一幅2n×2n的二值图像,以:“1”表示黑像素点,以“0”表示白像素点。图像二元树结构表示依赖于图像的二元分割,即交替在X轴方向和Y轴方向上分割。先进行水平分割,分成两个2n-1×2n图像子块,然后进行垂直分割,分成4个2n-1×2n-1的正方形块,如此分割,直到子块只含同一像素点为止。如图8-8为一“E”字的二值图像,对其进行二元分割,相应的二元树如图8-9所示。根据图像二元树的0叶结点和1叶结点的数目,删除多者,保留少者。如“E”字图像的二元树0叶结点较多,裁剪后如图8-10所示。
裁剪后图像二元树有4类结点,分别用二进制编码如下:
◆ 左右儿子都有的结点,编码为11;
◆ 仅有左儿子的结点,编码为10;
◆ 仅有右儿子的结点,编码为01;
◆ 叶结点,编码为00。
存储时,先存储剩余叶结点的类型编码,二进制码00表示0叶结点,11表示1叶结点。再按层次顺序,自左至右存储裁剪后图像二元树各结点的编码。
图像二元树的存储算法用C语言描述所定义的数据结构及函数如下:
struct Node{ /*图像二元树结点*/
street Node*Left;
street Node*Righ t;
char Pixel;
}
struct Node Queue[MaxLen]; /*队列*/
InitQueue() /*初始化队列Queue的函数; */
EmptyQueue () /*判断队列Queue是否为空的数,若空返回1,否则返回0; */
AddQueue(Item) /*将Item加到队列Queue的数; */
GetQueue() /*取队列Queue第一个元素的函数; */
PutCode(Code) /*写2位二进制码Code到文件的函数*/
还原算法是存储算法的逆过程,将文件中的二进制码序列转换成图像二元树。还原算法的数据结构与函数与存储算法的相同,还原算法新增了一个函数GetCode ()。
GetCode() /*从文件中读2位二进制码的函数*/
[C程序]
存储算法
void Backup (char CutPixel,st ruct Node ImageTree)’/*Cu tP ixel=0表示裁剪0叶结点*/
{ InitQueue();
AddQueue ( ImageTree ) ;
PutCode ( 1-CutPixel ) ;
While ( !EmptyQueue ( ) )
{ TreeNode= GetQueue ( ) ;
if (TreeNode→Left==NULL)
{ PutCode (0) ;
continue:
}
Tl= TreeNode→Left;
Tr= TreeNode→R igh t;
if ( Tl→Left= = NULL && Tl→Pixel= = CutPixel )
L=0;
else
{
(1);
AddQueue ( Tl ) ;
}
if ( Tr→Left= = NULL && Tr→Pixel= = CutPixel )
R=0;
else
{
(2)
AddQueue (T) ;
}
(3)
}
}
还原算法
void Restore ( struct Node *TreeRoot )
{ TreeRoot= ( strut Node*)malloc ( sizeof (struct Node)
InitQueue ( );
AddQueue ( TreeRoot ) ;
CutPixel= 1- GetCode ( ) ;
while ( ! EmptyQueue ( ) )
{ TrecNode= GetQueue ( Queue ) ;
NodeCode= GetCode ( ) ;
switch ( NodeCode )
{
case 0:
TreeNode→Left = NULL ;
TreeNode→Right= NULL
TreePixel=(4);
break;
case 1:
Tr= ( structNode* )malloc sizeof ( structNode)
TreeNode→Righ t= Tr;
AddQueue (Tr) ;
TI= ( struct Node* ) malloc sizeof ( struct Node )
Tl→Lefi- NULL;
Tl→Right NULL;
Tl→Pixel= CutPixel;
break;
case 2:
T1= ( structNode* )malloc sizeof (struct Node)
TreeNode→Lef t= Tl;
(5);
Tr= ( structNode* ) malloc ( sizeof ( street Node )
Tr→Left=-NULL ;
Tr→Right= NULL ,,
Tr→Pixel= CutPixel;
break;
case 3:
T1= ( struct Node* ) malloc ( sizeof ( struct Node )
TreeNode→Righ t= Tl;
AddQueue ( T1 ) ;
Tr= ( struct Node* )malloc (sizeof ( struct Node
TreeNode→Righ t=Tr;
AddQueue (Tr) ;
break;
}
}
}
选项
答案
(1)L=1 (2) R=1 (3) PutCode(L*2+R) (4) 1-CutPixel (5)AddQueue(T1)
解析
本题涉及了某图像二元树存储与还原算法。考生需要用一定时间去分析算法的思想。算法中主要应用了二元树存储结构。(1)根据算法思想,二元树左边没有节点[if (T1→Left==NULL&&T1→Pixel== CutPixel)],判断为假,那么(1)处应为L=1。同理可判断(2)处应为R=1。(3)根据算法设计思想,“if (TreeNode→Leff==NULL)”判断为假时,应该写二进制码L*2+R到文件。故答案为PutCode(L*2+R)。 (4)还原算法,当获取的存储码NodeCode=GetCode()为0时,根据存储算法只有L=0,R=0时GetCbde()才为0,再根据存储算法中的“PutCode(1-CutPixel)”,可知TreePixel=1-CutPixel。(5)NodeCode==2的情况时,对于存储算法,应该是L=1,R=0,这样L*2+R=2才成立。那么(5)处应该为AddQueue(T1)。
转载请注明原文地址:https://kaotiyun.com/show/UMDZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
针对以下C语言程序段,假设sta[10]=-1,对于x的取值,需要______个测试用例能够满足分支覆盖的要求。intMathMine(intx){intm=0;inti;for(i=x-1;i<=x+1;
在结构化分析方法中,依据______来进行接口设计。
根据ANSI/IEEE829标准,以下(37)属于《测试程序说明》中程序步骤的内容。 ①启动 ②目的 ③日志 ④设置
在程序控制流图中,有8条边,6个节点,则控制流程图的环路复杂性V(G)等于(55)。
编写汇编语言程序时,下列寄存器中程序员可访问的是______。A.程序计数器(PC)B.指令寄存器(IR)C.存储器数据寄存器(MDR)D.存储器地址寄存器(MAR)
以下(49)方法不是黑盒测试用例的设计方法。
在分布式数据库中有分片透明、复制透明、位置透明和逻辑透明等基本概念,其中:___________(19)是指局部数据模型透明,即用户或应用程序无须知道局部使用的是哪种数据模型;___________(20)是指用户或应用程序不需要知道逻辑上访问的表具体是怎
零件关系P(零件名,条形码,供应商,产地,价格)中的(12)属性可以作为该关系的主键。查询产于西安且名称为“P2”的零件,结果以零件名、供应商及零件价格分列表示,对应的SQL语句为:SELECT零件名,供应商,价格FROMPWHE
某软盘有40个磁道,磁头从一个磁道移至另一个磁道需要5ms。文件在磁盘上非连续存放,逻辑上相邻数据块的平均距离为10个磁道,每块的旋转延迟时间及传输时间分别为100ms和25ms,则读取一个100块的文件需要时间为(24)。
在分层体系结构中,(41)实现与实体对象相关的业务逻辑。在基于Java,EE技术开发的软件系统中,常用(42)技术来实现该层。(42)
随机试题
_______、_______、_______属于利息所得范围。
被调查的人群中某病病原体感染者所占的比例称为()。
医学伦理学公正原则要求对病人
建设项目()是指建设项目按《中华人民共和国合同法》,以合同方式确定建设项目有关各方之间的权利义务关系,是建设项目管理的核心。
不锈钢管道进行油清洗前应采用的处理方法为()。
假设地球是一个正球形,它的赤道长4万千米。现在用一根比赤道长10米的绳子围绕赤道一周,假设在各处绳子离地面的距离都是相同的,请问绳子距离地面大约有多高?()
数字黑暗时代是指历史上保存的数字文档在未来可能难以读取,甚至无法读取的情况。原因是现存的数字文档和多媒体所采用的数据格式由于过于陈旧而被弃用,或者无法识别。根据上述定义,下列可能属于数字黑暗时代的情形是:
詹姆斯和兰格提出的理论的共同点存于,他们都认为刺激首先引起人的_____________,然后进一步导致产生_____________。
进程(线程)调度的主要功能有()。
设某银行有基于关系型数据库的数据仓库系统,其中有下列数据Ⅰ.账户余额快照数据Ⅱ.DBMS的数据字典Ⅲ.账户存取明细数据Ⅳ.数据表结构说明文档Ⅴ.数据抽取日志以上数据不属于元数据的是()
最新回复
(
0
)