首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
在查找算法中,可用平均查找长度(记为ASL)来衡量一个查找算法的优劣,其定义为: 此处Pi为表中第i个记录被查找的概率,Ci为查找第i个记录时同关键字比较的次数,n为表中记录数。 以下叙述中均假定每一个记录被查找的概率相等,即Pi=1/n(i=1,2,…
在查找算法中,可用平均查找长度(记为ASL)来衡量一个查找算法的优劣,其定义为: 此处Pi为表中第i个记录被查找的概率,Ci为查找第i个记录时同关键字比较的次数,n为表中记录数。 以下叙述中均假定每一个记录被查找的概率相等,即Pi=1/n(i=1,2,…
admin
2019-06-12
75
问题
在查找算法中,可用平均查找长度(记为ASL)来衡量一个查找算法的优劣,其定义为:
此处P
i
为表中第i个记录被查找的概率,C
i
为查找第i个记录时同关键字比较的次数,n为表中记录数。
以下叙述中均假定每一个记录被查找的概率相等,即P
i
=1/n(i=1,2,…,n)。当表中的记录连续有序存储在一个一维数组中时,采用顺序查找与折半查找方法查找的值分别是( )。
选项
A、O(n),O(n)
B、D(n),O(1bn)
C、D(n1bn),O(n)
D、O(1bn),O(1bn)
答案
B
解析
顺序查找的基本思想是:从表的一端开始,顺序扫描线性表,依次将扫描到的结点关键字和给定值k相比较。若当前扫描到的结点关键字与k相等,则查找成功;若扫描结束后,仍未找到关键字等于k的结点,则查找失败。顺序查找方法既适用于线性表的顺序存储结构,也适用于线性表的链式存储结构。
成功的顺序查找的平均查找长度如下:
在等概率情况下,p
i
=1/n(1≤i≤n),故成功的平均查找长度为(n+…+2+1)/n=(n+1)/2,即查找成功时的平均比较次数约为表长的一半。若k值不在表中,则需进行n+1次比较之后才能确定查找失败。查找时间复杂度为O(n)。
若事先知道表中各结点的查找概率不相等,以及它们的分布情况,则应将表中结点按查找概率由小到大的顺序存放,以便提高顺序查找的效率。
顺序查找的优点是算法简单,且对表的结构无任何要求,无论是用向量还是用链表来存放结点,也无论结点之间是否按关键字有序,它都同样适用。其缺点是查找效率低,因此,当n较大时不宜采用顺序查找。
二分法查找又称折半查找,是一种效率较高的查找方法。二分法查找要求线性表是有序表,即表中结点按关键字有序,并且要用向量作为表的存储结构。
二分法查找的基本思想是(设R[low,…,high]是当前的查找区间):
(1)确定该区间的中点位置:mid=[(10w+high)/2]。
(2)将待查的k值与R[mid].key比较,若相等,则查找成功并返回此位置,否则需确定新的查找区间,继续二分查找,具体方法如下:
若R[mid].key>k,则由表的有序性可知R[mid,…,n].key均大于k,因此若表中存在关键字等于k的结点,则该结点必定是在位置mid左边的子表R[low,…,mid一1]中。因此,新的查找区间是左子表R[low,…,high],其中high=mid一1。
若R[mid].key
若R[mid].key=k,则查找成功,算法结束。
(3)下一次查找针对新的查找区间进行,重复步骤(1)和(2)。
(4)在查找过程中,low逐步增加,而high逐步减少。如果high
因此,从初始的查找区间R[1,…,n]开始,每经过一次与当前查找区间中点位置上结点关键字的比较,就可确定查找是否成功,不成功则当前的查找区间就缩小一半。重复这一过程,直至找到关键字为k的结点,或直至当前的查找区间为空(即查找失败)时为止。查找的时间复杂度为:O(log
2
n)。
转载请注明原文地址:https://www.kaotiyun.com/show/lORZ777K
本试题收录于:
软件设计师上午基础知识考试题库软考中级分类
0
软件设计师上午基础知识考试
软考中级
相关试题推荐
设信道采用2DPSK调制,码元速率为300波特,则最大数据速率为________b/s。(2010年下半年试题)
用户B收到用户A带数字签名的消息M,为了验证M的真实性,首先需要从CA获取用户的数字证书,并利用(1)验证该证书的真伪,然后利用(2)验证M的真实性。(1)
安全电子邮件使用____________协议。
访问控制列表(ACL)分为标准和扩展两种。下面关于ACL的描述中,错误的是__________。(2009年上半年试题)
在两台交换机间启用STP协议,其中SWA配置了STProotprimary,SWB配置了STProotsecondary,则图中()端口将被堵塞。
总线复用方式可以______。
在需求分析阶段,采用UML的用例图(usecasediagram)描述系统功能需求,如图4-4所示。指出图中的A,B,C和D分别是哪个用例?在UML中,重复度(multiplicity)定义了某个类的一个实例可以与另一个类的多个实例相关联。通常把它
在某并发系统中,有一个发送进程A、一个接收进程B、一个环形缓冲区BUFFER、信号量S1和S2。发送进程不断地产生消息并写入缓冲区BUFFER,接收进程不断地从缓冲区BUFFER取消息。假设发送进程和接收进程可以并发地执行,那么,当缓冲区的容量为N时,如何
请使用说明中的术语,给出上图中类Customer和类Person的属性。识别关联的多重度是面向对象建模过程中的一个重要步骤。根据说明中给出的描述,完成图中的(1)~(6)。
求为工程J1提供红色零件的供应商代号。求至少有一个和工程不在同一城市的供应商提供零件的工程代号。
随机试题
《雷雨》的中心人物是()
支配下颌牙牙髓的神经为
关于妊娠滋养细胞疾病,下列哪项是错误的
不能合成雌激素的组织是
药品零售企业的行为规则包括
概念的形成具有两个条件:第一是儿童必须辨别概念的_________;第二是成人对儿童的反应应绐予_________。
简述整群随机抽样的适用条件和优缺点。
目前市场期望投资报酬率为17%,无风险报酬率为13%,某行业的投资风险对市场平均风险的比率的经验值为1.5,该行业投资的风险报酬率为()。
为投资的事情发愁吗你还在
Whatdidthemanhavetodointhemorning?
最新回复
(
0
)