该【数据结构期末重点复习题 】是由【3827483】上传分享,文档一共【105】页,该文档可以免费在线阅读,需要了解更多关于【数据结构期末重点复习题 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。1
作业:
简述逻辑结构和存储结构的联系?
数据结构和数据类型有什么区别?
分析以下算法的时间复杂度
void func(int n)
{int i=0,s=0;
while (s<n)
{i++;
s=s+i;
}
}
2
2025/1/28
顺序表算法设计练习:
已知一个顺序表L,其中的元素递增有序排列,设计一个算法插入一个元素x后保持该顺序表仍递增有序排列。
3
2025/1/28
Void insert (Sqlist &L,ElemType x)
{
int i=0, j;
if (+1>)
p24
while (i< && x>=[i]) i++;
for (j=-1;j>=i; j--) [j+1]=[j];
[i]=x;
++;
}
参考算法:
#2022
4
2025/1/28
顺序表算法设计练习:
试写一个算法,实现顺序表的就地逆置,即利用原表的存储空间将线性表。(a1,a2,…,an)逆置为(an,an-1,…,a1)。
5
2025/1/28
参考算法:
Void reverse (Sqlist &L)
{
int i=0, j=-1;
while (i<j)
{
[i] <-> [j];
i++;
j--;
}
}
6
2025/1/28
顺序表算法设计练习:
试设计一个高效的算法,删除线性表L中所有值为x的元素。
7
2025/1/28
参考算法:
{
int count=0;
for (i=0;i<=-1;i++)
if ([i]==x)
count++;
else
Void deletelist (Sqlist &L, ElemType x)
01
}
[i-count]=[i];
02
8
2025/1/28
链表算法设计练习:
设计一个算法删除带头结点的单链表L中值为x的结点的直接前驱结点。
9
2025/1/28
Int delx(Linklist &L, ElemType x)
{ LinkList p=L, q=p->next, r;
If (q!=Null) r=q->next;
Else return 0;
While (r!=Null && r->data!=x)
{p=q;
q=r;
r=r->next;
}
if (r!=Null)
{p->next=q->next;
free(q);}
else return 0;
return 1;
}
参考算法:
#2022
10
2025/1/28
链表算法设计练习:
设计一个算法,在带头结点的单链表head中删除一个data域值最小的结点,假设该结点唯一。
数据结构期末重点复习题 来自淘豆网m.daumloan.com转载请标明出处.