TD01-绪论


一、数据结构基本概念

1、数据>数据元素>数据项
2、数据对象 是具有相同性质的数据元素的集合(是数据子集)
3、数据结构定义:S(D,R,P) ;D:某一数据对象,R:对象中所有数据成员关系集合,P:基本操作
4、数据结构包括:逻辑结构、存储结构、数据的运算

二、数据结构三要素

1.数据的逻辑结构

1、逻辑结构是指数据元素之间的逻辑关系
2、它与数据的存储无关,独立于计算机
3、主要有:集合线性结构、树形结构、图状结构或网状结构
4、数据的逻辑结构,是面向实际问题角度出发的

2.数据的存储结构

1、存储结构是数据结构在计算机中的表示(又称映像)
2、它包括数据元素的表示和关系的表示
3、它是用计算机语言实现的逻辑结构
4、主要有:顺序存储、链式存储、索引存储、散列(哈希)存储

3.数据运算

1、施加在数据上的运算 包括算法的定义和实现
2、算法的定义(设计)针对逻辑结构;算法的实现针对存储结构

4.小记

1、顺序表(数据结构),线性表的顺序存储;循环队列(顺序表表示的队列);哈希表;单链表;广义表是不同的数据结构(逻辑结构+存储结构+数据运算)

2、有序表(逻辑结构),关键字有序的线性表,仅描述元素之间的逻辑关系,属于逻辑结构。有序表既可链式存储也可顺序存储

3、在存储数据时,不仅要存储数据的,还要存储数据元素之间的关系

4、链式存储时,不同结点的存储空间可以不连续,但结点内的存储单元地址必须连续

5、不同的数据结构,逻辑结构和物理结构完全可能相同。如二叉树和二叉排序树(二叉排序树 可以 采用二叉树的逻辑表示和存储方式)

6、多型数据类型:数据元素类型不确定
字符串每个字符都是char,所以不是多型数据类型

7、堆是线性数据结构

8、数据的逻辑结构 是对数据之间关系 的描述

9、数据结构的基本操作的设置的最重要的准则是,实现应用程序(逻辑结构)与存储结构的独立。

10、逻辑结构可用不同的存储结构实现,不依赖于存储结构

三、算法

1.基本概念

1、算法是特定问题求解步骤的描述
2、五个特性:有穷性、确定性、可行性、输入、输出
(有穷:有穷步,有穷时间)
3、好的算法:正确性、可读性、健壮性、效率与低存储量需求

2.时间复杂度

一个语句的频度是指该语句在算法中被重复执行的次数。算法中基本运算(最深层循环内的语句)的频度与T(n)同数量级

3.空间复杂度

算法原地工作是指算法所需的辅助空间为常量,即O(1)

4.小记

1、程序 = 数据结构 + 算法
数据结构:如何用数据正确地描述现实世界问题,并存入计算机
算法:如何高效处理这些数据,以解决实际问题

2、某算法时间复杂度为O(n²),表明该算法T(n)=O(n²),则该算法执行时间与n²成正比,问题规模与n成正比

3、写出的死循环不是算法,因为不具有有穷性

4、算法的确定性,是相同输入有相同输出

5、算法的计算量的大小称为 计算的 复杂性

6、算法:解决问题的方法;程序:实现的一个手段

7、数据结构的抽象操作的定义与具体实现无关:抽象操作是外部怎样使用该数据结构;具体实现是内部的事情,外部不需要关心。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值