【数据结构】绪论部分

今天由我来跟大家讲一下数据结构的绪论部分吧。数据结构整体复习主要靠理解。理解了学习起来其实是很轻松的事情,学进去了你也会发现很好玩。这篇只是个结构概括,理解就行。

1.1 基本概念

1、数据:即信息。

2、数据元素:数据的基本单位。如:一个学生记录就是一个数据元素,由学号、姓名等数据项构成(数据项为构成数据元素的不可分割的最小单位)。

3、数据对象:相同性质的数据元素集合。数据的子集。

4、数据类型:一个值的集合和在此集合上一组操作的总称。

5、抽象数据类型:ADT。一个模型和在此模型上的一组操作。

6、数据结构:三要素:逻辑结构+存储结构+数据运算。

数据结构三要素

1、逻辑结构:数据元素之间的逻辑关系,解决的是两个元素时间是什么关系这个问题。有线性和非线性两大类。

2、存储结构:即物理结构,解决的是物理实现的问题。一般由4类,严蔚敏老师的书里好像只提到了俩。

3、数据运算:包括运算的定义和实现。定义针对逻辑结构,运算针对存储结构。

1.2  算法及评价

1、性质:有穷性、确定性、可行性、输入、输出。

2、目标:正确性、可读性、健壮性、时空效率。

算法评估

通过时间复杂度O(n)、空间复杂度S(n)体现。这两个通常会和后面各种排序算法比较中用到。

O(n)一般由最深层循环原子操作的次数得出。考点之一。

两条规则:

a、加法规则--用于并列

b、乘法规则--用于嵌套

O(1) < O(log n) < O(nlog n) < O(n2) < O(n3) < O(2^n) < O(n!) < O(n^n)

S(n)为所需的辅助额外空间。

这里注意一个原地工作不是指不需要辅助空间,而是其相对输入和程序本身所占空间来说为常量。

来张大图:

时间: 2024-10-07 14:14:25

【数据结构】绪论部分的相关文章

Learning Data Structure_1_数据结构绪论和算法

今天回到了杭电,在戴荣学弟的帮助下暂住他的寝室,解决了基本的生活问题,可以多点时间精力开始学习阅读刘志老师给的暑假要求掌握的书籍和知识了. 首先是数据结构,手头上主要是两本教材,一本是严蔚敏等主编的<数据结构(c语言版)>,另一本是程杰编的<大话数据结构>,前者经典严谨,后者通俗有趣,应该是不错的选择.以下是简要的学习内容和笔记. 数据结构绪论 1.数据结构是一门研究非数值计算的程序设计问题中的操作对象,以及它们之间的关系和操作等相关问题的学科. 2.掌握以下概念和术语:数据.数据

《大话数据结构》笔记(1)--数据结构绪论,算法

第一章 数据结构绪论 基本概念和术语 数据 数据是描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别,并输入给计算机处理的符号集合. 换言之,数据就是符号,而且具备两个前提: 1. 可以输入到计算机中 2. 能被计算机程序处理 数据元素 数据元素是组成数据的.有一定意义的基本单位,在计算机中通常作为整体处理.也被称为记录. 数据项 一个数据元素可以由若干个数据项组成. 数据项是数据不可分割的最小单位. 数据对象 数据对象是性质相同的数据元素的集合,是数据的子集. 数据结构 数据结构是

《大话数据结构》---第一章 数据结构绪论

数据结构是一门研究非数值计算的程序设计问题中的操作对象,以前他们之间的关系和操作等相关问题的学科. 程序设计 = 数据结构 + 算法 数据:描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别,并输入给计算机处理的符号集合.数据元素:组成数据的.有一定意义的基本单位,在计算机中通常作为整体处理.也被称为记录.数据项:一个数据元素可以由若干个数据项组成,数据项是数据不可分割的最小单位.数据对象:是性质相同的数据元素的集合,是数据的子集.(性质相同即具有相同数量和类型的数据项)数据结构:是

数据结构-绪论

上学的时候不知道数据结构是什么,也不知道它干什么的用的,所以浑浑噩噩的学完了.现在转型做c++开发才发现这东西很重要,虽然有STL和BOOSt,但是有什么比自己实现一个更方便的呢. 数据结构是什么 这个没有什么什么标准答案,最通常的说法就是:数据元素和数据元素之间的关系.我们从实际问题出发,抽象出数学模型,这个抽象的过程中提取出数据元素和他们之间的关系,数据元素的关系可以称为数据的逻辑结构,怎么在计算机汇实现这种逻辑结构就需要存储结构,数据的存储结构是数据结构的实现形式,它包含数据的表示和关系的

数据结构绪论

一.数据结构定义介绍 1.数据结构:相互之间存在一种或多种特定关系的数据元素的集合. 2.数据结构是一门研究非数值计算的程序设计问题中的操作对象,以及他们之间的关系和操作等相关问题的学科. 程序设计 = 数据结构 + 算法 二.基本概念和术语 1.数据:是描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别,并输入给计算机处理的符号集合. 注:声音.视频.图像等也是数据,可以通过编码输入到计算机中. 2.数据元素:是数据的基本单位,在计算机程序中通常作为整体进行处理.也被成为记录. 3

[数据结构]绪论(二)

逻辑结构类型 集合(平等) 线性结构(一对一) 树形结构(一对多) 图形结构(多对多) 存储结构类型 顺序存储结构 链式存储结构 索引存储结构 哈希(散列)存储结构 数据类型:一个值的集合和定义在此集合上的一组操作的总称.(eg:int) 抽象数据类型ADT=逻辑结构+抽象运算(eg:复数)complex 数据结构求解问题的过程 问题描述 设计存储结构 算法设计 算法分析

《大话数据结构》 第一讲.数据结构绪论 (读书笔记)

大话数据结构 导读笔记 第一讲: 一.基本概念和术语 (1)数据元素:是组成数据的.有一定意义的基本单位,在计算机中通常作为整体处理.也被称为记录.   比如,在人类中,什么是数据元素呀?当然是人了. (2)数据项:一个数据元素可以由若干个数据项组成.   比如人这样的数据元素,可以有眼.耳.鼻.嘴.手.脚这些数据项,也可以有姓名.年龄.性别.出生地址.联系电话等数据项,具体有哪些数据项,要视你做的系统来决定. 数据项是数据不可分割的最小单位.在数据结构这门课程中,我们把数据项定义为最小单位,是

第一章 数据结构绪论

本文章作为学习笔记,大量参考了<大话数据结构>这本书,因为没有用于商业活动,而且也算是为作者做了一个小小的宣传,作者应该不会告我侵权,哈. 数据结构的概念:是相互之间存在的一种或多种特定关系的数据元素的集合.(学了半天这个概念得知道吧!) 开场白 数据结构有什么用?如果你想走程序员的道路,如果你不想一辈子搬砖,如果你想比别人工资高百分之三十,如果你想让家人过上好日子,如果...  够现实了吧! 数据结构的起源 数据结构是程序员的炼狱,你经历了数据结构的"折磨"才能蜕变.数据

第1章 数据结构绪论

程序设计 = 数据结构 + 算法 数据结构的一些相关概念: 数据结构的定义:数据结构是相互之间存在一种或多种特定关系的数据元素的集合. 数据结构的分类: 逻辑结构是面向问题的.而物理结构是面向计算机的.其主要的目标就是将数据及其逻辑关系存储到计算机的内存中. 数据类型(以C语言为例)分为原子类型(整型.字符型等)和结构类型(如整型数组). 抽象数据类型(即对已有的数据类型进行抽象,如对一个点的描写叙述抽象为point类型:Abstract Data Type, ADT):指一个数学模型及定义在给

【算法】 算法和数据结构绪论

算法和算法分析 先说点无关紧要的.初中的时候,知道有CS这门专门的学科存在的时候最开始的概念中CS就是等同于算法.这有可能是因为当时的前桌是后来一代CS传奇WJMZBMR..因为当时看起来十分高端,再加上后来努力的方向完全和CS不搭边,所以对于算法二字一直心中抱着一种敬畏之情,觉得是整个CS中最干的干货部分.后来决定入这行之后,我的领导对我说算法这东西虽然很高大上,但是在日常工作中我们用的并不多(我们部门主要做运维和DevOps,确实对这方面的需求不大)所以也就一直耽搁着.但是随着深入,以及在网