- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
信管第二章线性表
顺序表的存储方式: 假设:每个元素占用L个存储单元,并以元素所占的第一个单元的存储地址作为数据元素的存储位置,记为LOC(a1) 。 线性表在计算机内采用这种顺序存储表示称为线性表的顺序存储结构或顺序映象。 1、初始化:构造一个空的顺序表 Status InitList_sq(Sqlist L) { L.elem=(ElemType*) malloc(LIST_INIT_SIZE*sizeof (ElemType)) //开辟空间 if(!L.elem) exit(OVERFLOW); //存储分配失败 L.length=0; //空表长度为0 L.Listsize= LIST_INIT_SIZE; //初始存储容量 return OK; }//InitList_sq 2、顺序表的插入 指在顺序表的第i-1个数据元素和第i个数据元素之间插入一个新的数据元素b,使原来长度为n的顺序表变为长度为n+1的顺序表。 插入 算法描述: Status ListInsert_Sq(Sqlist L,int i,ElemType e) {//在顺序线性表L中第i个位置之前插入新的数据元素e, i的合法值为1≤i≤ListLength_Sq(L)+1 if (i1|| iL.length+1) return ERROR;//i值不合法 if (L.length=L.listsize) { //当前存储空间已满,增加分配 newbase=(ElemType *)realloc(L.elem,(L.listsize+LISTINCREMENT)*sizeof(ElemType)); //再分配后的新址 //再分配函数 删除 顺序表的删除 Status ListDelete_Sq(SqList L,int i,ElemType e) {//在顺序表L中删除第i个数据元素,并用e返回其值 //i的合法值为1≤i≤ListLength_Sq(L) if (i1|| iL.length) return ERROR; //i值不合法 p=(L.elem[i-1]); //p为被删除元素的位置 e=*p; //被删除元素的值赋给e q=L.elem[L.length-1]; //表尾元素位置 for(++p;p=q;++p) *(p-1)=*p; //被删除元素之后的元素左移 --L.length; //表长减1 return OK; }//ListDelete_Sq 链表(Linked List)是线性表的链式存储表示。 每个元素由结点(Node)构成,它包括两个域: 数据域Data和指针域Next 带表头结点的单链表 表头结点位于表的最前端,其数据域可以不存储任何信息,也可存储如线性表长度等附加信息,仅标志表头。表头结点的指针域存储指向第一个结点的指针,这时单链表的头指针指向表头结点。 1、按序号查找 Status GetElem_L(LinkList L,int i,ElemType e) { //L为带头结点的单链表的头指针。当第i个元素存在时,其值赋给e并返回OK,否则返回ERROR p=L→next;j=1; //初始化,p指向第一个结点,j为计数器 while (p ji){ //顺指针向后查找,直到p指向第i个元素或p为空。 p=p→next;++j; } if (!p|| ji)return ERROR;//第i个元素不存在 e=p→data; //取第i个元素 return OK; }//GetElem_L 2、按值查找 int Locate_L(LinkList L,ElemType x){ //L为带头结点的单链表的头指针。当线性表中存在值和x 相等的元素时,返回其位序,否则返回0 p=L→next;i=1; //初始化,p指向第一个结点,i为计数器
您可能关注的文档
最近下载
- GST-XG9000A消防应急广播设备调试使用说明书A.doc VIP
- 访谈美国医学生.doc VIP
- 13美丽中国我们的家第2课时 课件 2025道德与法治二年级上册.ppt
- 新疆天山群吉萨依铜多金属矿床地质特征及成因.docx VIP
- 8.6《数学锯木头+爬楼梯问题》三年级上册.doc VIP
- 22g101-3独立基础、条形基础、筏板基础、桩基础.pptx VIP
- 消防鉴定考试承诺书下载.docx VIP
- 2025年06月英语四级真题及答案(共三套).pdf VIP
- 八年级上册数学-全册全套试卷易错题(Word版-含答案).doc VIP
- 广东省深圳市宝安区2024-2025学年三年级上学期Units1-4学业中段复习.docx VIP
原创力文档


文档评论(0)