## 数据结构C语言绪论复习(内含习题)

本文是关于数据结构C语言的复习,主要内容包括数据结构的研究内容、基本概念和术语,如数据、数据元素、数据结构的逻辑和存储结构,以及数据类型、抽象数据类型、算法和算法分析。重点介绍了四种基本逻辑结构:集合、线性、树形和图结构,以及顺序存储和链式存储的特性。
摘要由CSDN通过智能技术生成

**

数据结构C语言绪论复习

**要考试啦,根据老师 的PPT以及书本的一些知识复习一下下。

1.1数据结构研究的内容

程序=算法+数据结构

数据结构是一门研究非数值计算程序中的操作对象,操作对象之间的关系和操作的学科。

1.2基本的概念和术语

数据:客观事物的表示符号,是所有能被输入到计算机内并被计算机程序处理的符号。(PPT:所有能被输入到计算机中去的描述客观事物的符号)
数值性数据
非数值性数据(多媒体信息处理)

数据元素:数据的基本单位,或可称为结点或记录。
数据项:有独立含义的、不可分割的数据元素最小单位,或可称为域。
数据对象:有相同性质的数据元素的集合,数据的子集。

数据>数据元素>数据项

数据结构:相互之间存在一种或多种特定关系的数据元素的集合。(数据:是所有能被输入到计算中去的描述客观事物的符号,结构:数据元素之间存在的关系。)

数据结构包括逻辑结构和存储结构

数据结构唯一,存储结构不唯一

逻辑结构两大要素:数据元素、数据元素之间的逻辑关系。

逻辑结构包含四类基本结构

集合结构 线性结构 树结构 图结构

集合结构:数据元素属于同一集合
线性结构:数据元素之间一一对应,有且仅有一个开始和一个终端的结点,并且所有结点都最多只有一个直接前趋和一个后继。
非线性结构:一个结点可能有多个直接前趋和直接后继。
树结构或网状结构:数据元素之间一对多
图结构:数据元素之间多对多

数据的逻辑结构
线性结构
非线性结构
一般线性表
特殊线性表
线性表的推广
线性表
字符串
栈与队列
数组
广义表
树结构
图结构
集合结构
二叉树
有向图
无向图

存储结构
数据对象在计算机中的存储表示称为数据的存储结构,也称为物理结构。

存储结构:顺序存储和链式存储。

顺序存储借助元素在存储器中的相对位置来表示数据元素之间的逻辑关系,通常借助程序设计语言的数组类型来描述。

顺序存储要求所有的元素依次存放在一片连续的存储空间中。

链式存储
为了表示结点之间的关系,需要给每个结点附加指针字段,用于存放后继元素的存储地址。因此链式存储经常借助程序设计语言中的指针类型来描述。

1.2.3 数据类型和抽象数据类型
数据类型:是一个值的集合和定义在这个值集上的一组操作的总称。

抽象数据类型:一般指由用户定义的、表示运用问题的数学模型,以及定义在这个模型上的一组操作的总称,具体包括三部分:数据对象、数据对象上关系的集合以及对数据对象的基本操作的集合。

1.4算法和算法分析

1.4.1算法的定义以及特性
算法:是为了解决某类问题而规定的一个有限长的操作序列。

算法的五个特性
有穷性 确定性 可行性 输入 输出

评价算法的基本标准
正确性 可读性 健壮性 高效性

时间复杂度和空间复杂度是衡量算法的两个重要指标。

算法的效率的度量
算法效率:用依据该算法编制的程序在计算机上执行所消耗的时间来度量。

事后统计:利用计算机内计时功能,不同算法的程序可以用一组或多组相同的统计数据区分。
缺点:软件和硬件的好坏会掩盖算法本身的优劣。

语句频度:重复执行的次数。

算法时间复杂度的基本方法:找出语句频度最大的基本语句,计算基本语句的频度得到问题规模n的某个函数f(n),时间复杂度是由嵌套最深层语句的频度决定的。

执行最好情况:1次 最坏情况:n次 平均时间复杂度:O(n)
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值