常用的数据结构以及算法

转载 2016年08月30日 21:24:56

一、关于数据的几个概念 

1、数据。是对客观事物的符号表示。在计算机科学是指所有能够输入到计算机中并能被计算机程序处理的符号集合。包括数值、文字、图像、图像、音频、视频等形式。 

2、数据项。所谓数据项就是数据中具有独立含义的、不可再分割的最小数据单位。是客观实体一种特征的数据表示。 

3、数据元素。是多个相关数据项的集,是一个客观实体多种特征的数据描述,是计算机程序中加工处理的基本单位。 

数据元素按其组成可分为简单型数据元素和复杂型数据元素。简单型数据元素由一个 数据项组成,复杂型数据元素由多个数据项组成,它通常携带着一个概念的多方面信 

息。 

二、数据结构的几个概念。 

1、数据结构,就是相互之间存在一种或多种特定关系的数据元素的集合。 

可以简单表示为:数据结构 = 数据 + 关系 

同一数据元素集合,所定一的关系不同,构成不同的数据结构。 

数据结构包括逻辑结构和存储结构两个方面。 

2、数据的逻辑结构。是指对数据及其关系的抽象逻辑描述,对立与计算机,与机器实现无关。 

根据定义的关系不同,数据的逻辑结构分为四种: 

集合结构。数据元素之间未定义任何关的松散集合。 

线性结构。数据元素之间定义了次序关系的集合(全序集合),描述的是1对1关系。 

树形结构。数据元素之间定义了层次关系的集合(偏序集合),描述的是1对多关系。 

图状结构。数据元素之间定义了网状关系的集合,描述的是多对多关系。 

3、数据的存储结构(亦成物理结构)是指数据结构在计算机存储器中的具体实现。 

存储结构与孤立的数据元素表示形式不同,数据结构中的数据元素不但要表示其本身的实际内容,还要表示清楚数据元素之间的逻辑结构。 

常见的存储结构有: 

顺序存储结构:特点是借助于数据元素的相对存储位置来表示数据元素之间的逻辑结构; 

链式存储结构:特点是借助于指示数据元素地址的指针表示数据元素之间的逻辑结构。 

散列存储结构:顺序+算列。 

索引存储结构:顺序+索引。

数据元素相互之间的关系称为结构。有四类基本结构:集合、线性结构、树形结构、图状结构; 

集合结构:除了同属于一种类型外,别无其它关系线性结构:元素之间存在一对一关系常见类型有: 数组,链表,队列,栈,它们之间在操作上有所区别.例如:链表可在任意位置插入或删除元素,而队列在队尾插入元素,队头删除元素,栈只能在栈顶进行插入,删除操作. 

树形结构:元素之间存在一对多关系,常见类型有:树(有许多特例:二叉树、平衡二叉树、查找树等) 图形结构:元素之间存在多对多关系,图形结构中每个结点的前驱结点数和后续结点多个数可以任意复杂算法都由最基本的组成,   

最基本的自然用得最多:查找、排序、二叉树遍历...

1   用的最多也是最简单的数据结构是   线性表   
2   有前途的又难数据结构是   图   
3   常用的80%算法是   排序和查找  

相关文章推荐

数据结构常用算法

  • 2014-12-26 14:23
  • 260KB
  • 下载

速查表:常用算法和数据结构的复杂度

常用算法和数据结构的复杂度速查表, 搜索 算法 数据结构 时间复杂度 空间复杂度     平均 最差 最差 深度优先搜索 (DFS) G...

数据结构常用算法实现print

线性表的顺序表示 程序2_1.c提供了顺序存储结构下线性表的实现。第1行定义了一个常数值MAXSIZE。它是一个常数,表示线性表的最大长度。第2行把ELEMTYPE设置为int的一个别名。这样,这个...

数据结构中常用的排序算法

排序常用的算法有:插入算法(直接插入算法、折半插入算法、希尔算法)、选择算法(简单选择算法、堆排序算法)、快速算法(冒泡排序、快速排序算法) 以下程序给出了各种算法的实现,其接口为void sort(...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)