学习笔记整理:数据结构与算法-绪论

本文详细阐述了数据结构的定义,包括数据元素、数据对象、数据结构的逻辑与存储结构,以及它们之间的关系。强调了数据类型的概念,特别是抽象数据类型(ADT),并概述了算法的特性及时间复杂度分析。同时,指出逻辑结构与存储结构的差异,并讨论了算法时间复杂度的表示方法,如常数阶、线性阶等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、学科定义:一门研究非数值计算程序设计问题中计算机的操作对象以它们之间的关系和操作等的学科。

2、基本概念:
数据:能被输入到计算机中,且能被计算机处理的符号的集合,是计算机操作对象的总称。
数据元素:是数据的基本单位,也叫元素、记录。
数据项:是组成数据元素的集、有独立含义、不可割分的最小单位,如:姓名、学号....
数据对象:是性质相同的数据元素的集合。(可以是无限集、有限集、复合数据元素)
数据结构

3、数据结构:
①定义:是相互之间存在一种或者多种特定关系的数据元素的集合。
②特点:数据元素集合相同,而其的关系不同。则构成的数据结构不同。
③内容:数据逻辑结构、数据的存储结构、数据的运算。
        数据逻辑结构(两要素,数据元素和关系):集合结构、线性结构(一对一),树结构(一对多),图结构或者网状结构(多对多)。
        数据的存储结构(存储节点的数据以及其之间的关系):顺序存储结构、链式存储结构、索引存储结构(建立附加索引表)、哈希散列存储结构(根据哈希函数与冲突方法确定节点位置)
        数据的运算:对数据实施操作,例如检索、插入、删除、更新和排序等。        
        

4、逻辑结构与存储结构的关系:
线性≠顺序,其中线性是逻辑结构,顺序是存储结构。
②同一逻辑结构可以对应多种存储结构。
③同样的运算,在不同的存储结构中,其实现过程是不同的。

5、数据类型:
①抽象数据类型:数据元素集合以及定义在该集合上的一组操作,简称ADT
        特征:数据抽象,强调的是其本质的特征和其所能完成的功能以及它和外部用户的接口;数据封装,将实体的外部特性和其内部实现细节分离,并且对外部用户隐藏其内部实现细节。
                

 6、算法的特性:有穷性、确定性、可行性、输入、输出(可以没有输入,但至少有输出,不然没有意义。)

7、算法的时间复杂度:
①一般用算法中语句被执行的次数来表示算法的时间效率。
②忽略次要语句的执行次数,只对重要的语句和执行最频繁的语句进行计数,同时对计算结果只取最高次幂忽略系数不写!!!用大O表示。例如:
                

                 

 ③没有循环的算法的基本运算次数与问题规模n无关,记作O(1),也称常数阶
 ④只有一个循环的算法基本运算次数与问题规模n的增长呈线性增大关系,记作O(n),称线性阶
还要平方阶、立方阶、对数阶、指数阶等。
                大小关系:

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Aure_xl

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值