参加计算机二级考试,计算机二级公共基础知识是必考科目,为了帮助大家通计算机二级公共基础知识,树图网(环球青藤旗下品牌)小编整理了‘计算机二级公共基础知识复习要点(10月22日)’,其他更多计算机二级考试资讯敬请关注计算机二级频道。
树图思维导图提供 计算机二级公共基础知识复习要点(10月22日) 在线思维导图免费制作,点击“编辑”按钮,可对 计算机二级公共基础知识复习要点(10月22日) 进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:cf8e96896ab70e68d4d6d270ca5f72f1
计算机二级公共基础知识复习要点(10月22日)思维导图模板大纲
顺序表的删除运算
在顺序在存储结构的线性表中删除一个元素。
注意:找到删除的数据元素后,从该元素位置开始,将后面的元素一一向前移动,在移动完成后,线性表的长度减1
(1)删除运算的逻辑描述
线性表的删除运算是指将表的第i(1≤i≤n)个结点删去,使长度为n的线性表
(a1,…,ai-1,ai,ai+1,…,an)
变成长度为n-1的线性表
(a1,…,ai-1,ai+1,…,an)
注意:
当要删除元素的位置i不在表长范围(即i<1或i>L->length)时,为非法位置,不能做正常的删除操作
(2)顺序表删除操作过程
在顺序表上实现删除运算必须移动结点,才能反映出结点间的逻辑关系的变化。若i=n,则只要简单地删除终端结点,无须移动结点;若1≤i≤n-1,则必须将表中位置i+1,i+2,…,n的结点,依次前移到位置i,i+1,…,n-1上,以填补删除操作造成的空缺。其删除过程【参见动画演示】
(3)具体算法描述
void DeleteList(SeqList *L,int i)
{//从L所指的顺序表中删除第i个结点ai
int j;
if(i<1||i>L->length)
Error("position error"); //非法位置
for(j=i;j<=L->length-1;j++)
L->data[j-1]=L->data[j]; //结点前移
L->length--; //表长减小
(4)算法分析
①结点的移动次数由表长n和位置i决定:
i=n时,结点的移动次数为0,即为0(1)
i=1时,结点的移动次数为n-1,算法时间复杂度分别是0(n)
②移动结点的平均次数EDE(n)
其中:
删除表中第i个位置结点的移动次数为n-i
pi表示删除表中第i个位置上结点的概率。不失一般性,假设在表中任何合法位置(1≤i≤n)上的删除结点的机会是均等的,则
p1=p2=…=pn=1/n
顺序表上做删除运算,平均要移动表中约一半的结点,平均时间复杂度也是0(n)。
树图思维导图提供 Linux 网络基础知识 在线思维导图免费制作,点击“编辑”按钮,可对 Linux 网络基础知识 进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:199680f0e48eac8a1aeaadb90447d4f4
树图思维导图提供 title: 2024-11-8未命名文件 tags: 影像诊断与手术后符合率统计与分析报告鱼骨图 在线思维导图免费制作,点击“编辑”按钮,可对 title: 2024-11-8未命名文件 tags: 影像诊断与手术后符合率统计与分析报告鱼骨图 进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:f19c198bf7435acf7735ee5051a89d7b