数据结构笔记(一)

这篇文章是我自己在学数据结构的课堂笔记,手下吗欢迎大家看呦,同时有哪些不对的地方,也欢迎大家能够指出来,希望大家一块探讨呀~~

数据结构的起源
  1. 数值计算与非数值计算
  2. 数据结构是一门研究非数值计算的程序设计问题中的操作对象,以及他们之间的关系和操作等相关问题的学科。
  3. 程序设计 = 数据结构+算法
什么是数据
  数据是描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别,并输入给计算机处理的符合集合。而这些符号必须具备俩个前提
  (1)可以输入到计算机中
  (2)能被计算机程序处理
数据元素
  数据元素是组成数据的基本单位,在计算机常被作为整体处理(为了更好的理解,可以把数据元素看成小的分子)。比如在R集中的,每一个实数就是R的一个数据元素。
数据项
  上面提到数据元素,而数据项就是组成数据元素的单位,数据项不可再分(可以看作是原子)。但是在研究我们数据结构的时候,是基于分子的,即数据元素本身。
数据对象
  是性质相同的数据元素的集合,是数据的子集。所谓性质相同是指数据元素的数据项具有相同的结构。数据对象一般意义上成为数据.
在搞清了上面几个概念后,那什么是数据结构呢?
  数据结构,是用来描述数据的,是相互之间存在一种或多种特定关系的数据元素的集合,其研究的是非数值的计算。

数据结构有俩种模式,一种是逻辑结构(指数据对象中数据元素之间的相互关系),另一种是存储结构(指数据的逻辑结构在计算机中存储形式)
逻辑结构又可以分为集合结构,线性结构(一对一),树形结构(一对多),网状结构(多对多)
集合结构:结构中的数据元素之间除了同属于一个集合的关系外,无任何其它关系。
线性结构:结构中的数据元素之间存在着一对一的线性关系。
树型结构:结构中的数据元素之间存在着一对多的层次关系。
图状结构或网状结构:结构中的数据元素之间存在着多对多的任意关系。

存储结构可以分为顺序存储结构和链式存储结构。

线性存储结构是指数据元素存放在地址连续的存储单元里,其数据间的逻辑关系和物理关系是一致的。例如数组。
链式存储结构把数据元素存放在任意的存储单元中,这组存储单元可以是连续的,也可以不是不连续的。每一个元素包含了下一个元素的地址信息,通过指针保存。
抽象数据类型
数据类型:一组性质相同的值的集合,以及定义在此集合上的一些操作(运算)的总称。
抽象数据类型:Abstract Data Type,ADT;一个数学模型及定义在该模型上的一组操作。ADT只与逻辑有关,与具体在计算机中的表示和实现无关。 一种抽象类型包括 数据对象中各元素间的关系、一组基本操作、数据对象

好多朋友不知道数据结构和数据类型的关系,在这里我简要说一下。 数据类型必须依赖于语言,而数据结构则不需要,我们说数据类型时是针对某个值来说,某个值是哪种类型,int,double...

数据结构和算法是密不可分的。在下次笔记中我们将谈到算法,包括算法的基本概念,时间复杂度等。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值