第一章 数据结构绪论

本文章作为学习笔记,大量参考了《大话数据结构》这本书,因为没有用于商业活动,而且也算是为作者做了一个小小的宣传,作者应该不会告我侵权,哈。

数据结构的概念:是相互之间存在的一种或多种特定关系的数据元素的集合。(学了半天这个概念得知道吧!)

开场白

数据结构有什么用?如果你想走程序员的道路,如果你不想一辈子搬砖,如果你想比别人工资高百分之三十,如果你想让家人过上好日子,如果...  够现实了吧!

数据结构的起源

数据结构是程序员的炼狱,你经历了数据结构的“折磨”才能蜕变。数据结构就是大牛们经验的总结,跟着走不会错。

一个经典的公式:程序设计=数据结构+算法。

几个概念

数据:是描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别,并输入给计算机处理的符号集合。(符号--可以输入计算机中并能被计算机程序处理)

数据元素:组成数据的、有一定意义的基本单位,在计算机中通常作为整体处理。也被称为记录。

数据项:一个数据元素可以由若干个数据项组成,数据项是数据不可分割的最小单位。

数据对象:是性质相同的数据元素的集合,是数据的子集。

逻辑结构和物理结构

逻辑结构:是指数据对象中数据元素之间的相互关系。

1.集合结构:集合结构中的数据元素除了同属于一个集合外,它们之间没有其他关系。

2.线性结构:数据结构中数据元素之间是一对一的关系。

3.树形结构:数据元素之间存在一种一对多的层次关系。

4.图形结构:图形结构的数据元素是多对多的关系。

物理结构:是指数据的逻辑结构在计算机中的存储形式。

1.顺序存储结构:是把数据元素存放在地址连续的存储单元里,其数据间的逻辑关系和物理关系是一致的。

2.链式存储结构:是把数据元素存放在任意的存储单元里,这组存储单元是连续的,也可以是不连续的。

抽象数据类型

数据类型:是指一组性质相同的值的集合及定义在此集合上的一些操作的总称。

抽象数据类型:是指一个数学模型及定义在该模型上的一组操作。(抽象在于数据类型的数学抽象特性)

几个图总结一下:

时间: 2024-10-13 03:02:29

第一章 数据结构绪论的相关文章

C语言数据结构——第一章 数据结构的概念

一.数据结构的基本概念 1.1-数据结构是什么? 数据结构是计算机存储和组织数据的方式.数据结构是指相互之间存在一种或多种特定关系的数据元素的集合.一般情况下,精心选择的数据结构可以带来更高的运行或者存储效率.数据结构往往同高效的检索算法和索引技术有关. 想要对大型复杂程序的构造进行系统而科学的研究,必须首先对这些程序中所包含的数据结构进行深入的研究. 数据:通常用于描述客观事物,是对客观事物的符号表示.例如:在我们平时使用的各种文字.数字和特定符号都可以称之为数据.而在计算机中,数据是指所有能

数据结构 第一章学习小结

数据结构   第一章学习小结 1.数据结构第1章的心得体会: 这周学习了数据结构的绪论及第一章.初步了解了数据结构与算法的相关概念,一开始看书看视频时觉得还挺抽象的,不能够完全理解.但是反复多看了几遍之后,结合例题,自己去操作去跑代码,慢慢觉得容易理解接受起来了.由于现在以网课形式进行教学,老师上课的同时基本还是靠自己去理解学习.当然老师也发挥很大的作用,比如让我们更深入的了解递归的空间复杂度为什么与问题规模有关,又怎样去找到该函数的临界值等等.既锻炼了我们深入思考的能力,也让我们更加清楚了解不

数据结构第一章

证明数据结构分析中的结论的两个常用的方法时归纳法和反证法 归纳法:第一步是证明基准情形,就是确定定理对于某个小的值的正确性,(这一步几乎是很简单的 第二部,进行归纳假设,一般来说,这意味着假设定理对直到某个有限数k的所有的情况都成立的,然后使用这个假设证明定理对于下一个值也是成立的. 反证法:通过假设定理不成立,然后证明该假设导致某一个已知性质不成立,从而说明原假设是错误的. 反证法和归纳法不同处,归纳发从基础出发,反证法从结论出发. 什么是递归:当一个函数用他自己来定义时就称为是递归. 不是所

数据结构第一章学习小结

第一章学习了一些基本概念以及它们之间的联系,对数据结构这门课程有了初步的了解.刚开始看书的时候,有很多地方不是很明白,对一些名词的解释也不懂,后来结合视频讲解才比较透彻.一开始不清楚ADT的作用,直到自己去写了一遍才有体会.当自己不懂或者不会的时候,一定要自己上手去写去打代码,才能明白困扰自己的那个点在哪里,通过查资料.看视频等等方式解决这个问题.数据结构和算法是相辅相成的,理解透彻基本的概念,才能为之后的学习铺路.这学期要肯花功夫,本来基础就不是很好,更应该笨鸟先飞.对概念的理解不透彻,或言之

第一章 数据结构概论

1.1  什么是数据结构 在数据结构中数据之间的关系主要有两种:线性关系和非线性关系(非线性关系又分为树形关系和图形关系). 如上图:每个数据单位(一条学生记录)相邻的前一个数据单位最多只能有一个(第一个没有),相邻的后一个数据单位最多只能有一个(最后一条没有).这种数据单位的集合成为数据集合,这种数据之间的关系成为线性关系(这种数据文件就是一个线性表). 我们的电脑硬盘中的目录文件结构,是一个树形结构(树形关系),这种即是非线性的: 多台电脑之间互相通信的多对多的关系,属于非线性关系中的图关系

《大话数据结构》---第一章 数据结构绪论

数据结构是一门研究非数值计算的程序设计问题中的操作对象,以前他们之间的关系和操作等相关问题的学科. 程序设计 = 数据结构 + 算法 数据:描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别,并输入给计算机处理的符号集合.数据元素:组成数据的.有一定意义的基本单位,在计算机中通常作为整体处理.也被称为记录.数据项:一个数据元素可以由若干个数据项组成,数据项是数据不可分割的最小单位.数据对象:是性质相同的数据元素的集合,是数据的子集.(性质相同即具有相同数量和类型的数据项)数据结构:是

数据结构读书笔记---------第一章 绪论

1.1  数据结构的概念   数据结构是一门研究非数值计算程序设计中计算机的操作对象以及它们之间的关系和运算等的学科. 1.2  相关的概念和术语 数据:是信息的载体,它能够被计算机识别,存储和加工处理,它是计算机程序加工的原料.它可以是数值数据,也可以是非数值数据. 数据项:具有独立含义的标识单位,是数据不可分割的最小单位.数据项具有一定的类型,以数据项的取值类型而定. 数据元素:是数据的基本单位.在不同条件下,数据元素又可以称为元素,结点,顶点等. 数据对象:具有相同性质的数据元素的集合.在

第一章——数据结构之绪论

1.1 什么是数据结构 1.2 基本概念和术语 1.3 抽象数据类型的表示与实现 1.4 算法和算法分析 1.4.1 算法 1.4.2 算法设计的要求 1.4.3 算法效率的度量 1.4.4 算法的存储 1.1 什么是数据结构 一般来说,用计算机解决一个具体的问题时,大致需要经过下列几个步骤: 1.首先要从具体问题抽象出一个适当的数学模型 2.然后设计一个解此数学模型的算法 3.最后编出程序,进行测试,调整直至得到最终解答 寻求数学模型的实质是分析问题,从中提取操作的对象,并找出这些操作对象之间

数据结构第一章绪论课后小练

题一: 判断n是否是一个素数,若是则返回逻辑值true,否则返回逻辑值false. package ch01; import java.util.Scanner; public class Part01 { public boolean prime(int a) { boolean flag=true; if(a==1) { flag=false; } for(int i=2;i<a-1;i++) { if(a%i==0) { flag=false; break; } } return flag