首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和算法,完善算法并回答问题。 【说明】 假设以二维数组G[1..m,1..n)表示一幅图像各像素的颜色,则G[i,j]表示区域中点(i,j)处的颜色,颜色值为0~k的整数。 下面的算法将指定点(i0,j0)所在的同色邻接区域的颜色置
阅读以下说明和算法,完善算法并回答问题。 【说明】 假设以二维数组G[1..m,1..n)表示一幅图像各像素的颜色,则G[i,j]表示区域中点(i,j)处的颜色,颜色值为0~k的整数。 下面的算法将指定点(i0,j0)所在的同色邻接区域的颜色置
admin
2008-05-15
94
问题
阅读以下说明和算法,完善算法并回答问题。
【说明】
假设以二维数组G[1..m,1..n)表示一幅图像各像素的颜色,则G[i,j]表示区域中点(i,j)处的颜色,颜色值为0~k的整数。
下面的算法将指定点(i0,j0)所在的同色邻接区域的颜色置换为给定的颜色值。约定所有与点(i0,j0)同色的上、下、左、右可连通的点组成同色邻接区域。
例如,一幅8×9像素的图像如图2-1所示。设用户指定点(3,5),其颜色值为0,此时其上方(2,5)、下方(4,5)、右方(3,6)邻接点的颜色值都为0,因此这些点属于点(3,5)所在的同色邻接区域,再从上、下、左、右四个方向进行扩展,可得出该同色邻接区域的其他点(见图2-1中的阴影部分)。将上述同色区域的颜色替换为颜色值7所得的新图像如图2-2所示。
【算法】
输入:矩阵G,点的坐标(i0,j0),新颜色值newcolor。
输出:点(i0,j0)所在同色邻接区域的颜色置换为newcolor之后的矩阵G。
算法步骤(为规范算法,规定该算法只在第七步后结束)如下。
第一步:若点(i0,j0)的颜色值与新颜色值newcolor相同,则(1);
第二步:点(i0,j0)的颜色值→oldcolon创建栈S,并将点坐标(i0,j0)入栈;
第三步;若(2),则转第七步;
第四步;栈顶元素出栈→(x,y),并(3);
第五步;1)若点(x,y-1)在图像中且G[x,y-1]等于oldcolor,则(x,y-1)入栈S;
2)若点(x,y+1)在图像中且GIx,y+1]等于oldeolor,则(x,y+1)入栈S;
3)若点(x-1,y)在图像中且G[x-1,y)等于oldcolor,则(x-1,y)入栈S;
4)若点(x+1,y)在图像中且G[x+1,y)等于oldcolor,则(x+1,y)入栈S;
第六步:转(4);
第七步:算法结束。
【问题】
是否可以将算法中的栈换成队列?回答;(5) 。
选项
答案
(1)转第七步 (2)栈S空,或等价的文字描述 (3)G[x,y]←newcolor,或G[x,y]=newcolor,或等价的文字描述 (4)第三步 (5)可以
解析
本题考查栈结构在算法中的应用。
栈或(和)队列常在某些应用中用来临时存储需要处理的元素,因此,其基本应用方式为:首先令一个(或多个)元素入栈(队列),然后在栈(队列)非空的情况下,栈顶(队头)元素出栈(队列)并进行处理,然后令与该栈顶(队头)元素相关的其他元素入栈(队列),再从判栈(队列)空开始重复以上过程。
根据题目说明部分的描述,所有与点(i0,j0)同色的上、下、左、右可连通的点组成同色邻接区域。要置换一个同色邻接区域中所有点的颜色,可先将所有需要改变颜色的点的坐标记录下来,然后逐个地改变其颜色值;也可采取找出一个点、处理一个点的方式进行颜色置换。题中给出的算法属于后一种情况。
显然,算法中需要一个存储空间,用于临时存储需要置换颜色的点的坐标,使每个需要处理的元素都进、出该存储区域一次,算法中的栈起的就是这个作用。实际上,对区域中各点的颜色置换的顺序是无关紧要的,因此,将算法中的栈换成队列不会影响算法的输出。
在本题中,若新的颜色值与同色区域中的原颜色相同,则无需置换。因此空 (1)处应填入“转第七步”。算法第二步先记下点(i0,j0)所在区域的原颜色,并令点(i0,j0)入栈,之后就是基于栈非空的操作了,因此空(2)处应填入“栈S为空”。第三步令栈顶元素出栈并修改对应点的颜色值,空(3)处应填入“修改(x,y)处的颜色值为newcolor"。算法中必然有一步能使算法步骤循环处理,因此第六步中的空(4)处应填入“第三步”。
转载请注明原文地址:https://kaotiyun.com/show/JsjZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
在Excel中,若A1单元格的格式为000.00,在该单元格中输入数值36.635,按回车键后,则A1单元格中的值为(45)。
下列关于写字板的叙述中,不正确的是(41)。
在Excel中,用&运算符进行运算时,其运算对象的类型应为______。
在Windows7中,剪贴板是用来在程序和文件间传递信息的临时存储区,此存储区是______。
医疗诊断属于计算机在______方面的应用。
在SQL中,GROUPBY子句用于()。
在Excel2007中,设单元格A1中的值为-1,B1中的值为1,A2中的值为0,B2中的值为1,若在C1单元格中输入函数“=IF(AND(A1>0,B1>0),A2,B2)”,按回车键后,C1单元格中的值为______。
下列选项中,不属于Access数据库对象的是______。
在Windows7中,若删除桌面上某个应用程序的快捷方式图标,则(31)。
双击某个非可执行程序的文件名将(24)。
随机试题
A.IFNB.IL-8C.IL-2D.IL-4E.CCR5辅助HIV感染T细胞的是
5岁以下幼儿最常见的气管和支气管异物类型多为
东北地区某综合楼,建筑高度为110m,消防水池设置了两路消防供水,火灾情况下能满足消防要求。在建筑顶层的一个专用房间内设置了自动喷水系统的高位水箱、稳压泵和气压罐,在水泵房内设置了一组自动喷水消防水泵,采用“二用二备”,主消防泵采用电动离心泵,备用消防泵采
企业确定固定资产使用寿命时,应当考虑的因素包括()。
如果市场上短期国库券的利率为6%,通货膨胀率为2%,风险收益率为3%,则下列说法中不正确的是()。
第三人可以参加民事诉讼,这是因为他在民事诉讼中,对他人之间的诉讼标的有独立的请求权,或者()。
水:温柔:滋润
“社会必要劳动时间是在现有的社会正常生产条件下,在社会平均劳动熟练程度和劳动强度下制造某种使用价值所需要的劳动时间。”因此,形成商品价值量的劳动的尺度是
函数y=C1ex+C2e-2x+xex满足的一个微分方程是
A、 B、 C、 B
最新回复
(
0
)