数据结构之综合ppt总结版

这篇博客全面总结了数据结构中的关键概念,包括二叉树的遍历、度为1的结点统计、算法时间复杂度分析、循环队列的操作以及链表的逆转。还涵盖了顺序表、单链表、栈和队列的操作,以及Huffman编码的设计。此外,讨论了数据结构的逻辑分类、存储结构以及抽象数据类型的基本组成。
摘要由CSDN通过智能技术生成

数据结构之All In


1.设一棵二叉树的先序序列:A B D F C E G H,中序序列: B F D A G E H C。

(1)画出这棵二叉树
(2)画出这棵二叉树的后序线索树
(3)将这棵二叉树转换成对应的树或森林

在这里插入图片描述


用按层次顺序遍历二叉树的方法,统计树中度为1的结点数目

在这里插入图片描述在这里插入图片描述


求下列算法的时间复杂度

s=0;
for i=0; i<n; i++)
	for(j=0; j<n; j++)
         s+=B[i][j];
sum=s;

答案:O(n2)
解释:语句s+=B[i][j];的执行次数为n2。


在n个结点的顺序表中,算法的时间复杂度是O(1)的操作是( A )。

A.访问第i个结点(1≤i≤n)和求第i个结点的直接前驱(2≤i≤n)
B.在第i个结点后插入一个新结点(1≤i≤n)
C.删除第i个结点(1≤i≤n)
D.将n个结点从小到大排序
解析:选项A中的读取结点操作通过数组下标直接定位


在一个有127个元素的顺序表中插入一个新元素并保持原来顺序不变,平均要移动的元素个数( )。

A.8
B.63.5
C.63
D.7
知识点:线性表的插入算法分析 n=127, 移动次数 n/2=63.5


算法设计题:

设计算法将一个带头结点的单链表A分解为两个具有相同结构的链表B和C,其中B表的结点为A表中值小于零的结点,而C表的结点为A表中值大于零的结点(链表A中的元素为非零整数,要求B、C表利用A表的结点)

void Decompose(LinkList &A,LinkList &B,LinkList &C )
{
    B=A;
B->next= NULL; ∥B表初始化
C=new LNode;∥为C申请结点空间
C->next=NULL; ∥C初始化为空表
p=A->next; ∥p为工作指针
while(p!= NULL)
{
    r=p->next; ∥暂存p的后继
if(p->data<0)
{
   p->next=B->next
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值