题目内容
(请给出正确答案)
[主观题]
在有序表0,21,23,45,55,78,82,86,91,98上查找元素5,若执行顺序搜索需要至少比较______次查找失败;若执行对半搜索,需要比较_____次查找失败(答案请用半角逗号相隔,不要有空格)。
提问人:网友lovewxh123
发布时间:2022-01-07
(1)写出执行f30(a,b)的返回值,其中a和b分别为指向存储集合{2,4,5,7,9,12}和{2,4,5,7,9}的链表的头指针;
(2)简述算法f30的功能;
(3)写出算法f30的时间复杂度。
int f30(LinkList ha,LinkList hb)
{
//LinkList是带有头结点的单链表
//ha和hb分别为指向存储两个有序整数集合的链表的头指针
LinkList pa,pb;
pa=ha—>next;
pb=hb—>next;
while(pa&&pb&&pa—>data==pb—>data)
{ pa=pa—>next;
pb=pb—>next;
}
if(pa==NULL&&pb==NULL)return 1;
else return 0;
}
(1)设线性表L=(21,-7,-8,19,0,-11,34,30,-10),写出执行f30(&L)后的L状态;
(2)简述算法f30的功能。
void f30(SeqList*L){
int i,j;
for(i=j=0;i<L—>length;i++)
if(L—>data[i]>=0){
if(i!=j)L—>data[j]=L—>data[i];
j++;
}
L—>length=j;
}
A、A
B、B
C、C
D、Z
为了保护您的账号安全,请在“简答题”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!