数据结构(C语言版)
基本概念及术语
数据结构基本概念
1.数据
所有能输入到计算机中并被程序处理的符号集合。
2.数据元素
数据的基本单位,在计算机程序中通常被作为一个整体考虑和处理。
3.数据项
数据不可分割的最小单位,相当于记录的”域”或者字段。
4.数据对象
性质相同的数据元素的集合,是数据的一个子集。如大写字母就是一个数据对象。
5.数据结构
(1)简单定义:相互之间存在一种或多种特定关系的数据元素的集合,这种数据元素的相互关系称为结构。
(2)形式定义:是指数据结构是一个二元组,Data_Structure=(D,S),D是数据元素的有限集,S是D上关系的有限集。
例:如图所示的矩阵,对应数组表示为A=(D,R)
D={1,2,3,4,5,6,7,8,9,10,11,12};
R={r1,r2}
r1表示行关系,r2表示列关系。
\begin{equation} A=\left[ \begin{matrix} 1&2&3&\\ 4&5&6&\\ 7&8&9&\\ 10&11&12&\\ \end{matrix} \right] \end{equation}
6.数据的逻辑结构
元素之间的逻辑关系,即数据元素之间的关联方式或临接关系。
7.存储结构(物理结构)
数据的逻辑结构在计算机中的表示(映像)
8.数据的运算
对数据施加的操作。
数据的运算定义的数据的逻辑结构层次上,只有确定了存储结构,才能具体实现这些运算。
9.数据类型
一个值的集合&定义在这个值集上的一组操作的总称。
规定了该类型数据的取值范围和所能进行的操作。
10.抽象数据类型ADT
一个数据模型及定义在该模型上的一组操作。
数据类型指的是高级程序设计语言支持的基本数据类型。
而抽象数据类型通常指的是自定义的数据类型,由基本数据类型组成,并包含一组相关操作。
可以用三元数组(D,S,P)表示
D:数据对象
S:D上的关系集
P:对D的基本操作
数据结构的分类
1.按数据之间的关系分
(1)线性结构
该结构中的结点之间存在一对一的关系
特点:开始结点没有前驱,终端结点没有后继。
除了开始结点和终端结点,其余结点都有且仅有一个直接前驱和直接后继。
(2)非线性结构
结构中的结点之间存在一对一或多对多的关系。
2.按逻辑结构分
(1)集合结构
数据元素同属于一个集合,每个数据元素都和其它元素无任何关系。
(2)线性结构
数据元素之间存在着一对一的线性关系。
(3)树型结构
数据元素之间存在着一对多的层次关系
(4)图形结构(网状结构)
数据元素之间是多对多的任意关系,如公交站点
3.按存储方式分
(1)顺序存储结构
用一个连续的地址空间,把逻辑上相邻的结点按某个次序放在物理位置上相邻的存储单元里。
结点之间的逻辑关系由存储单元的邻接关系体现。
通常借助程序语言中的数组描述。
(2)链式储存结构
不要求逻辑上相邻的结点在物理位置上也相邻。
结点间的逻辑关系是由附加的指针字段来表示的。
通常借助于程序语言的指针来描述。
(3)索引存储结构
除建立结点信息外,还要建立附加的索引来标识结点的地址。
(4)散列存储结构
选择一适当的散列函数,根据结点的关键字直接计算出该结点的存储地址。
数据结构(C语言版)相关推荐
- c语言 静态链表插入排序,数据结构C语言版 表插入排序
西门豹治邺奇计 数据结构C语言版 表插入排序.txt两个人吵架,先说对不起的人,并不是认输了,并不是原谅了.他只是比对方更珍惜这份感情./* 数据结构C语言版 表插入排序 算法10.3 P267-P2 ...
- 为什么C语言是非形式化的,《数据结构C语言版》——绪论
<数据结构C语言版>--绪论<笔记> 一.基本概念和术语 1.数据,数据元素, 数据项,数据对象 数据:是客观事物的符号表示,是所有能够输入到计算机中并被计算机程序处理的符号的 ...
- C语言中链表的英文名字,数据结构C语言版 循环链表表示和实现(国外英文).doc
数据结构C语言版 循环链表表示和实现(国外英文) 数据结构C语言版 循环链表表示和实现(国外英文资料) Data structure, C language, circular list repres ...
- 数据结构(c语言版)笔记6,2020考研计算机《数据结构(C语言版)》复习笔记(6)
2020年计算机考研复习已经开始,新东方在线在此整理了2020考研计算机<数据结构(C语言版)>复习笔记(6),希望能帮助大家! 第六章 树知识点整理 树是n个结点的有限集合,非空时必须满 ...
- c语言打印树形图形,数据结构C语言版树形结构.ppt
数据结构C语言版树形结构 St中元素 算法执行的操作 ch AC k=2 , AC 建立E结点,因k=1,将其作为C结点的左孩子结点 E AC C结点进栈,k=1 ( A 建立C结点,因k=2,将其作 ...
- 逆置单链表c语言程序,(数据结构C语言版)顺序表和单链表的逆置
<(数据结构C语言版)顺序表和单链表的逆置>由会员分享,可在线阅读,更多相关<(数据结构C语言版)顺序表和单链表的逆置(7页珍藏版)>请在人人文库网上搜索. 1.实验1-1顺序 ...
- 23V3有这种C语言表达式吗,数据结构(C语言版第2版_李云清)习题答案2012-12.doc
数据结构(C语言版第2版_李云清)习题答案2012-12.doc 第 1 章 绪论 1.1 什么是数据结构? [答]:数据结构是指按一定的逻辑结构组成的一批数据,使用某种存储结构将这批数据存储 于计算 ...
- 邓公数据结构C++语言版学习笔记——二叉树
二叉树的遍历 一. preorder--先序遍历VLR 1. 递归先序遍历 2. 迭代先序遍历 3.先序遍历图解 二. inorder--先序遍历LVR 1. 递归中序遍历 2.迭代中序遍历 3.迭代 ...
- 邓公数据结构C++语言版学习笔记1
1. 对于计算幂2n2^n2n的算法优化 暴力算法时间复杂度O(n)O(n)O(n) __int64 power2BF_I(int n) //幂函数2^n算法(蛮力迭代版),n >= 0{ __ ...
- 数据结构c语言版第16页,数据结构c语言版
数据结构c语言版[编辑] 概述 <数据结构C语言版>本书的前半部分从抽象数据类型的角度讨论各种基本类型的数据结构及其应用;后半部分主要讨论查找和排序的各种实现方法及综合分析比较 出版信息 ...
最新文章
- 理解jQuery对象$.html
- java下载网络中的文件,java下载网络文件解决思路
- iOS中Block的基础用法
- mysql数据库的备份和二进制日志恢复
- 11 个 Git 面试题
- @selector 如何调用在另一个类中的静态函数?
- 叛乱联机服务器未响应,叛乱沙漠风暴开服注意事项及操作指南经验一览
- 零基础通信基础知识入门(4G/5G通信知识入门书籍)
- [音乐天堂]辛德勒名单原声大碟
- http状态码200,300,404等是什么意思
- Codeforces Round #828 (Div. 3) E1. Divisible Numbers (easy version) 解题报告
- Building dependency tree… Done Package aptitude is not available, but is referred to by another pac
- 包装类的使用:自动装箱与自动拆箱
- 『与善仁』Appium基础 — 3、移动端测试环境搭建(三)之AVD模拟器安装
- RSPSS重复测量方差分析
- 用JS操作FRAME中的IFRAME及其内容
- javascript实现的淘宝五星评价(版本2)
- 云计算技术基础 第2章 云计算的架构及国内外标准化情况(2)
- Dplayer直播m3u8流
- 专科院校计算机专业老师待遇,专科大学老师和本科大学老师,薪资待遇一样吗,原来是这样评定的...