事业单位招聘考试论坛

 找回密码
 立即注册
查看: 146|回复: 0

青海事业单位考试计算机基础知识:顺序表的删除

[复制链接]

3万

主题

3万

帖子

11万

积分

论坛元老

Rank: 8Rank: 8

积分
114820
发表于 2016-6-19 23:23:16 | 显示全部楼层 |阅读模式
青海教师考试网将于时间提供青海省教师考试报名时间、考试时间、职位表等相关信息。为帮助广大考生备考青海省教师考试,青海教师考试网特此整理教师考试考试资讯、资料辅导、考试题库、备考动态等知识汇总。
参加2014青海省教师招聘的考生可以加入我们的QQ群:345580069与群内好友一起备战教师招聘考试,也可以使用微信编辑“qhjsks”加入我们,获取更多相关资讯。
【导语】在事业单位考试中,计算机专业知识的复习向来是考生复习备考阶段的一大重点,其中中公为计算机基础知识的复习为考生提供知识点梳理,帮助考生备考!
通常,在长度为 n 的顺序表中,要删除线性表的第i(1≤i≤n)个元素ai 。得到长度为 n-1的线性表(a1,a2,…,ai-1,ai+1,…,an) 。
即 (a1, a2,…,ai-1,a’i,a’i+1,…,a’n-1),其中a’i 为原表中的ai+1 ,其余类推,a’n-1为原表中an 。
一般情况下,要删除第i (1≤i≤n )个元素,需要从第i+1 个元素开始,直到第n 个元素之间,共有n-i 个元素依次向前移动了一个位置。删除结束后,顺序表的长度就缩小了1。在平均情况下,要在顺序表中删除一个元素,需要移动表中一半的元素。
在顺序表L中删除第i个元素并用x 返回其值的算法Delete List描述如下:
void DeleteList(SeqList *L,int i, ElemType *x)
{
int j,n=L->length;
if(in)
{
printf(" \n i值不合法!");
exit(1);
}
*x=L->list[i-1];
/*将被删元素的值,赋给*x */
for(j=i;j
L->list[j-1]=L->list[j];
/*元素依次向前移动一个位置 */
L->length--; /*表长减少1 */
}
   

微信号:qhjsks
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|新都网

GMT+8, 2024-11-20 15:36 , Processed in 0.066059 second(s), 7 queries , WinCache On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表