小草的学习笔记-数据结构与算法基础概念

基础概念

 一.数据

基本概念

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

 二.数据元素

基本概念

  数据元素是组成数据的、有一定意义的基本单位,在计算机中通常作为整体处理。 数据是描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别,并输入给计算机处理的符号集合。

 三.数据项和数据对象

基本概念

  数据项是一个数据元素可以由若干个数据项组成,是数据的不可分割的最小单位。 数据对象是性质相同的数据元素的集合,是数据的子集。

数据结构

  数据结构是相互之间存在一种或多种特定关系的数据元素的集合。数据结构包括三方面的内容:逻辑结构、存储结构和数据的运算。数据的逻辑结构和存储结构是密不可分的两个方面,一个算法的设计取决于所选定的逻辑结构,而算法的实现依赖于所采用的存储结构

 简要介绍

  数据的逻辑结构是对数据之间关系的描述,它与数据的存储结构无关,同一种逻辑结构可以有多种存储结构。数据的逻辑结构主要有两大类:线性结构和非线性结构。线性结构是一个数据元素的有序(次序)集合,而非线性结构则不是这样的集合。

  数据的存储结构是指数据的逻辑结构在计算机中的存储方式,也称为物理结构。一种数据结构的逻辑结构根据需要可以表示成多种存储结构,常用的存储结构有顺序存储、链式存储、索引存储和散列存储等。

  数据的运算是指对数据实施的操作,数据运算最终需要在对立的存储结构上用算法实现,所以数据运算分为运算定义和运算实现两个层面,数据上的运算可以分为三大类:算术运算、移位运算和逻辑运算。

 抽象数据类型

基础定义在用一个数学模型下定义在该数学模型下的一组操作,其中包含:

      1.由用户定义的,从问题出发抽象出的数据模型操作(即逻辑结构)

      2.还包括定义在数据模型上的一组抽象运算(相关操作)

      3.不考虑计算机内的具体内存结构与运算的具体实现算法

 形式定义包括(D,S,P)三元组来表示,D是数据对象,S是D上的关系集,P是对D的基本操作集。

具体抽象数据类型的格式如下(伪代码):

ADT 抽象数据类型名{

         数据对象:<数据对象的定义>

         数据关系:<数据关系的定义>

         基本操作:<基本操作的定义>

} ADT 抽象数据类型名

其中基本操作包含许多对数据操作的算法这边推荐C语言基础薄弱的同学深入学习这方面算法以巩固基础。

用C语言来实现抽象数据类型的定义

typedef strict{

           ElemDate *data;

           int length;

}

  其中ElemData为需要定义的数据类型(数据类型为性质相同的值的集合),即数据类型=值的集合+值集合上的一组操作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值