数据结构导论怎么学:逻辑与物理结构的区别,搞定算法入门
一、引言
1、数据结构(Data)它是指一种在计算机里面对数据进行组织和管理数据结构导论, 并且进行存储的方式, 具体来说呢, 它涉及一组相互之间具有一种或者多种特定关系的数据的组织形式, 这些数据在计算机内部具体是怎么存储的, 还包含了一组针对这组数据来执行操作的方法。 #
2、计算机解决问题的步骤 #
建立数学模型, 接下来设计算法, 最后再进行编程实现对算法的具体应用。
#
3、数据逻辑结构这一词语所指代的含义, 就是要把数据本身是什么东西搞明白, 同时还得把数据进行组织的那个具体方式也说清楚。
#
4、物理结构, 也叫做存储结构, 它就是指那些数据结构在里面机器当中的那种表现方式嘛, 其实就是说的就是把那个数据的逻辑结构给放在计算机里面去实现的那种情况。
#
5、关于数据结构、算法与程序之间的那些关联关系, 按照在一九七六年由一位名叫尼克劳斯·维尔特的瑞士籍计算机科学家所提出的概念来进行解释的话, 我们可以这样去说, 就是把算法加上去再加上数据结构, 那么其结果就等于那个称之为程序的这么一个事物。
Wirth
#
提出)
二、基本概念和术语
#
所谓数据, 指的就是所有那些可以被计算机去加以处理的符号所构成的一个整体集合, 而我们在解决实际问题的过程当中所使用的数据, 通常又有一个别称专门叫做原始数据。 #
所谓数据元素呢, 它其实就是数据这个整体集合当中的一个单独的个体存在, 同时我们也可以把它叫做是数据的基本单位。
#
数据项, 也就是英文里写的 Data Item, 数据元素通常情况下还可以被进一步划分为若干个数据项, 这些个数据项乃是数据具备实际意义的最小单元;而处于数据库环境之中时, 数据项又被人们称作是字段, 或者说是域, 它属于那种无法再被分割开来的最小标识单位。 #
逻辑结构的种类
它是在计算机内部用来表示数据的具体形式, 换句话说,这就是我们所说的数据的存储结构。
#
这存储结构里头留学之路,最主要的那一部分是啥呢。
#
这4种存储结构数据结构导论, 它们分别是。
***********************顺序结构************************
#
它的特点是会在前面提前把长度定下来, 所以在需要存东西的时候就得多想一下得占多大的地方才能装得下。要是想在里头加东西或者抠掉什么东西的话就得挪动别的家伙跟着跑。但是存取的速度挺快, 因为它是一种随便能找的存取法子。
************************链式结构************************ #
它的特点是能够做到动态去分配东西, 所以完全不需要提前就把内存分配的那个规模给定下来, 并且在往里插进去一个新东西或者把里面的东西删掉的时候, 压根就不需要去把其他的元素挪来挪去地搬家, 因为它并不是那种可以随机乱点位置就能直接访问的结构。
#
************************索引存储方式:*************************
这种索引存储方式, 它主要是依赖于那个位于索引表中的索引, 然后借助这个索引来明确那些各个不同存储节点具体的存储位置到底是在哪里所存在的。
***********************散列存储方式:****************************
关于散列存储方式, 它的运行逻辑是使用一个叫做散列函数的工具, 通过这个工具去指明每一个节点应当被存放在什么位置。 #
运算被理解为在给定的逻辑框架之上所施加的各类动作, 换句话说, 也就是针对这些逻辑结构展开的具体加工处理工作。所谓的加工型运算, 其特征十分明显, 即其执行的操作会导致原有的逻辑结构原本的数值状态发生改变, 这其中包括诸如结点的数量变化、结点内部具体内容更新等实例。 #
与之形成对照的是引用型运算, 这类运算符在进行相关操作的过程中, 并不会对原始逻辑结构的原有数值产生任何改变的效果。至于那些被称为基本运算的项目, 主要包含了建立新结构、查找特定目标、读取现有数据、插入新的元素以及实现删除操作等一系列功能。
三、 算法及描述
这个算法它规定了解决所给出来的那种类型的问题所需要的所有的处理步骤以及这些步骤的执行顺序, 这样一来, 那种给定类型的问题就能够被用机械的方式在有限的时间之内得到求解。 #
算法这个东西, 它必须得借助某一种语言来进行描述才行。 #
算法是针对具体问题求解的一种具体描述, 在本质上来说, 它就是一组指令的完整且有限的排列过程。 #
这算法它具备下面这些个特点。 #
四、 算法分析
算法的设计, 应当做到以下几点: #
我们要从两个可以度量性能指标的角度, 来选定那个算法表现最佳。
#
确定算法的计算量: #

京公网安备 11010802021846号