【菜鸟入门】数据结构

    数据结构(DataStructure)是计算机组织、存储数据的方式。它与算法、程序之间的关系,可以用一个等式来概括:算法+数据结构=程序。在分析数据结构之前先来了解几个概念

基本概念:

   数据:所有被计算机存储、处理的对象,是信息的载体

   数据项:是数据不可分割的最小的标识单位,在数据库中数据项又称为字段或域

   数据元素:由数据项组成,是数据的基本单位,通常具有完整确定的实际意义,在程序中作为一个整体而加以考虑和处理,又称为元素。

【菜鸟入门】数据结构_第1张图片

 

 

   数据结构是相互之间存在一种或多种特定关系的数据元素的集合。它包括数据的逻辑结构、存储结构和基本运算,这三部分联系紧密,在讨论一个数据结构的同时讨论在该类数据结构上执行的运算才有意义。

组成部分:

1.数据的逻辑结构:指数据元素之间的前后件关系,是对数据元素间逻辑关系的描述,与他们在计算机中的存储位置无关。通常有四类基本结构:

1)集合:任意两个结点之间都没有邻接关系,组织形式松散。

2)线性结构:结点按逻辑关系一次排列形成一条“链”

3)树形结构:具有分支、层次特性,形态像自然界中的树。

4)图结构:任何两个结点都可以邻接,结构比较复杂

2.数据的存储结构(物理结构):指数据的逻辑结构在计算机存储空间的存放形式,是其在计算机内的表示。一个存储结构包括两部分:

1)存储数据元素

2)数据元素之间的关联方式,分为四类:

a.顺序存储:所有存储结点存放在一个连续的存储区里,利用结点在存储器中的相对位置来表示数据元素之间的逻辑关系

b.链式存储:每个存储结点除了含有一个数据元素外,还包含指针,每个指针指向一个与本结点有逻辑关系的结点,用指针表示数据元素之间的逻辑关系

c.索引存储方式

d.三列存储方式

一种逻辑结构可以有多种存储结构,且各种存储结构影响数据处理的效率

3.数据结构的运算:在数据的逻辑结构上定义的操作算法,如:插入、删除、更新和排序等。算法的设计取决于逻辑结构,而实现依赖于采用的存储结构。

小结:

   一个数据结构是由数据元素依据某种逻辑联系组织起来的,在程序的设计中,数据结构的选择是一个基本的设计考虑因素,选择了数据结构,算法也随之确定。常用的结构有:数组Array、栈Stack、队列Queue、链表Linked List、树Tree、图Graph、堆Heap和散列表Hash,这些是我们要重点研究的对象。本篇博客是数据结构的概述,在后续博客中将逐步深入讨论

你可能感兴趣的:(【菜鸟入门】数据结构)