1 / 10
文档名称:

数据结构基础知识.docx

格式:docx   大小:19KB   页数:10页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

数据结构基础知识.docx

上传人:我是开始 2021/6/26 文件大小:19 KB

下载得到文件列表

数据结构基础知识.docx

相关文档

文档介绍

文档介绍:复****提纲
第一章数据结构概述
基本概念与术语(P3)
.数据结构 是一门研究非数值计算程序设计问题中计算机的操作对象以及他
们之间的关系和操作的学科.
是用来描述现实世界的数字,字符,图像,声音,以及能够输入到计算机 中并能被计算 机识别的符号的集合
.数据元素是数据的基本单位
.数据对象 相同性质的数据元素的集合
数据结构 三方面内容:.
数据的逻辑结构 指数据元素之间固有的逻辑关系 .
数据的存储结构 指数据元素及其关系在计算机内的表示
(3 )数据的操作 指在数据逻辑结构上定义的操作算法 ,如插入,删除等.
时间复杂度分析
1、 名词解释:数据结构、二元组
2、 根据数据元素之间关系的不同,数据的逻辑结构可以分为 集合、线性结构、树形结构和图状结构四种类型。
3、 常见的数据存储结构一般有四种类型, 它们分别是 顺序存储结构 、 链式存储
结构 、 索引存储结构 和 散列存储结构。
4、 以下程序段的时间复杂度为 ―O(N2)。
int i,j,x;
for(i=0;i<n:i++) n+1
for(j=0;j<n;j++) n+1
x+=i;
第二章线性表
顺序表结构 由n(n>=0)个具有相同性质的数据元素a1,a2,a3 ,an组成的
有穷序列
//顺序表结构
#define MAXSIZE 100
typedef int DataType;
Typedef struct{
DataType items[MAXSIZE];
Int length;
}Sqlist,*LinkList;
单链表
链表结点结构
//链表的节点结构
Typedef struct Node{
int data;
struct Node *next;
} Lnode,*Pnode,*LinkList;
结点遍历
void TraverseList(LinkList t){ LinkList p;
while(t){
p=t;
t=t->next free(p);
}
}
链表操作算法:初始化、插入、输出、删除
void InitList(LinkList *h){
*h=(LinkList)malloc(sizeof(LNode));
if(!h){
print( “初始化错误”);
return;
}
(*h)->next=NULL;
void InsertList(LinkList h,int pos,datatype x)( LinkList p=h,q; int i=0; while(p&&i<pos-1){ p=p->next; i++;
}
if(!p||i>pos-1)print( “插入位置出错!! ” );
InitList(&q);
q->next=NULL;
q->data=x;
}
void DeleteList(LinkList h,int pos){ LinkList p=h,q; int i=0;
while(p&&i<pos-1){
p=p->next;
i++;
}
if(!p||i>pos-1){cout<< ”删除位置错误” ;ret