- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构第二章教程
第2章 线性表;线性结构:一个数据元素的有序(次序)且是有限的集合。
;线性结构的基本特征:
① 存在唯一的一个 “第一个”的数据元素;
② 存在唯一的一个 “最后一个”的数据元素;
③ 除第一个元素外,每个元素均有唯一的一个前驱;
④ 除最后一个元素外,每个元素均有唯一的一个后继。
;2.1 线性表的类型定义;抽象数据类型线性表的定义;2.2 线性表的顺序表示和实现;以”有序对相邻”表示ai-1,ai
即:LOC(ai) =LOC(ai-1) +l
一个数据元素所占存储量
所有数据元素的存储位置均取决于第一个数据元素的存储位置
LOC(ai) =LOC(a1) +(i-1)×l
基地址
;顺序映像的C语言描述
#define LIST_INIT_SIZE 100
//线性表存储空间的初始分配量
#define LISTINCREMENT 10
//线性表存储空间的分配增量
typedef struct{
ElemType *elem; //存储空间基址
int length; //当前长度
int listsize; //当前分配的存储容量
// (以sizeof(ElemType)为单位)
}SqList; //俗称顺序表;线性表的初始化操作
Status InitList_Sq(SqListL) {
//构造一个空的线性表
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
在顺序表中,第i个数据元素是L.elem[i-1];线性表操作:
ListInsert(L,i,e)的实现:
(a1,…,ai-1,ai,…,an)改变为
(a1,…,ai-1,e,ai,…,an);Status ListInsert_Sq(SqList L, int i,ElemType e) {
if (i1 ‖iL.length +1) return ERROR;
if(L.length =L.listsize) {
newbase = (ElemType *) realloc(L.elem,(L.listsize +LISTINCREMENT)*sizeof(ElemType));
if(!newbase) exit(OVERFLOW);
L.elem =newbase;
L.listsize + = LISTINCREMENT;
}
q =(L.elem[i-1]); //q指示插入位置
for(p =(L.elem[L.length-1]);p=q; --p)
*(p +1) =*p; //插入位置及之后的元素右移
*q =e; //插入e
+ +L.length; //表长增1
return OK;
}//ListInsert_Sq
算法时间复杂度:O(n);考虑平均的情况:
假设在第i个元素之前插入的概率为Pi
则在长度为n的线性表中插入一个元素所需移动元素次数的期望值为:
n+1
Eis = ∑pi(n-i+1)
i = 1
若假定在线性表中任何一个位置进行插入的概率都是相等的,则移动元素的期望值为:
n+1
Eis = ∑(n-i+1) ×1/(n+1) =n/2
i = 1
;线性表操作:
ListDelete(L,i,e)的实现:
(a1,…,ai-1,ai, ai+1,…,an)改变为
(a1,…,ai-1, ai+1,…,an)
;Status ListDelete_Sq(SqList L,int i,ElemType e) {
//在顺序线性表L中删除第i个元素,并用e返回其值
//i的合法值为1≦i ≦listlength_Sq(L)
if (i1 ‖iL.length) return ERROR;
您可能关注的文档
最近下载
- 《混凝土结构加固设计规范》GB50367.pdf VIP
- 《精神疾病诊断与统计手册》DSM5.PDF VIP
- 2冷疗技术15课件讲解.pptx VIP
- 海姆立克急救法操作考核标准.doc VIP
- JJG 195-2019 连续累计自动衡器(皮带秤).pdf VIP
- 专项治理整改落实及长效机制建设情况报告().pdf VIP
- TD∕T 1087-2023 主体功能区优化完善技术指南.pdf
- (完整word版)数独题目100题(可打印).doc VIP
- 0604-会计专业国家技能人才培养工学一体化课程标准(试用).docx VIP
- 04.汉杂事秘辛.一卷.汉.阙名撰.明崇祯时期汲古阁刊本.pdf VIP
文档评论(0)