精华内容
下载资源
问答
  • 数据结构绪论

    2018-01-09 20:35:00
    了解数据结构的基本概念、研究对象以及数据结构课程的发 展历史,对数据结构与算法课程有 对数据结构与算法课程有 个一 宏观的认识 掌握贯穿全书的重要概念-----抽象数据型,包括其概念的定 义和实现方法,初步掌握...
  • 数据结构是一门研究非数值计算的程序设计问题中计算机的 操作对象 以及它们之间的 关系 和运算等的学科 2. 数据结构被形式地定义为 D, R 其中 D 是 数据元素 的有限集合 R 是 D 上的 关系 有限集 合 3. 数据结构...
  • 数据结构绪论思维导图
  • 数据结构绪论ppt.pptx

    2020-03-03 00:06:51
    ;说在课程学习之前;为什么学习数据结构与算法;为什么学习数据结构;... Knuth清华大学出版社 [3] 高一凡数据结构算法实现及解析(第二版)西安电子科技大学出版社 [4] 唐发根数据结构教程北京航空航天大学出版社2005年5
  • 考研数据结构绪论

    2018-12-17 21:29:21
    考研资料,需要的同学可以下载,是数据结构绪论的学习
  • 数据结构基本概念 基本概念和术语 数据:数据是信息的载体,信息是数据的内涵 数据元素:数据的基本单位,一个数据元素可由若干数据项组成 数据项:数据项是构成数据元素不可分割的最小单位 数据对象:数据对象是...

    数据结构基本概念

    基本概念和术语

    在这里插入图片描述

    1. 数据:数据是信息的载体,信息是数据的内涵
    2. 数据元素:数据的基本单位,一个数据元素可由若干数据项组成
      在这里插入图片描述
    3. 数据项:数据项是构成数据元素不可分割的最小单位
      在这里插入图片描述
    4. 数据对象:数据对象是具有相同性质数据元素的集合,是数据的子集
      在这里插入图片描述
      在这里插入图片描述
    5. 数据类型:数据类型是一个值的集合以及定义在此集合上一组操作的总称
      数据类型=数据元素+数据操作
    • 原子类型 eg:int
    • 结构类型 eg:结构体
    • 抽象数据类型ADT:只需关心逻辑结构,无需关心具体实现、存储结构
      ADT 抽象数据类型
      {
      数据对象(数据对象的定义)
      数据关系(数据关系的定义)
      基本操作(基本操作的定义)
      }ADT 抽象数据类型名
    1. 数据结构:数据结构是相互之间存在一种或多种特定关系的数据元素的集合
      数据结构 = 数据元素 + 数据关系

    数据结构三要素

    在这里插入图片描述

    逻辑结构

    集合:数据元素同属一个集合,别无其他关系
    线性结构:一对一
    树:一对多
    图:多对多
    在这里插入图片描述
    在这里插入图片描述

    物理/存储结构

    在这里插入图片描述

    运算

    运算的定义依赖于逻辑结构,运算的实现依赖于存储结构

    算法及其算法评价

    算法基本概念

    在这里插入图片描述
    在这里插入图片描述

    算法是对特定问题求解步骤的描述

    把数据结构提供的基本操作/运算的有序组合运用去解决特定问题即算法
    在这里插入图片描述

    算法的五个特性:

    • 有穷性
      在这里插入图片描述

    • 确定性
      相同输入得到相同输出。

    • 可行性
      算法中描述的操作都可以通过已经实现的基本运算执行有限次来实现。

    • 输入
      一个算法有零个或多个输入,这些输入取自于某个特定的对象的集合。

    • 输出
      一个算法有一个或多个输出,这些输出是与输入有着某种特定关系的量。

    好算法特质

    • 正确性。算法应能够正确地解决求解问题。
    • 可读性
    • 健壮性。输入非法数据时,算法能适当地做出反应或进行处理,而不会产生莫名其妙的输出结果。
    • 高效率与低存储量需求。即时空复杂度低。

    算法效率

    时间复杂度T(n)

    在这里插入图片描述

    空间复杂度S(n)

    算法原地工作是指算法所需的辅助空间为常量,即S(n)=O(1)
    在这里插入图片描述

    展开全文
  • 第一节 什么是数据结构;1用计算机解决问题的步骤;2非数值计算问题举例;概括地说;第二节 基本概念;例如;二数据对象 具有相同性质的数据元素组成的集合,是数据的子集 如 整数数据对象 N = { 0, ?1, ?2, } 字母字符数据...
  • 数据结构绪论什么是数据结构PPT学习教案.pptx
  • 数据结构绪论讲义

    2013-10-13 13:08:43
    数据结构(C语言版) 严蔚敏主编 教师讲义 绪论
  • 数据结构绪论 及答案

    2012-10-14 19:47:27
    数据结构的认识初步。系统的认识数据结构,进行系统的检测。
  • 一、什么是数据结构数据结构是相互间存在一种或多种特定关系的数据元素的集合。程序设计=数据结构+算法、数据结构是一门研究非数值计算的程序设计问题中的操作对象,以及他们之间的关系和操作等相关问题的学科。二...

    一、什么是数据结构?

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

    程序设计=数据结构+算法、

    数据结构是一门研究非数值计算的程序设计问题中的操作对象,以及他们之间的关系和操作等相关问题的学科。

    二、什么是数据

    数据是描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别,并输入给计算机处理的符号集合。例如(整型、实型等数据类型、字符、声音、图像、视频等)

    三、数据元素

    数据元素是组成数据的、有一定意义的基本单位,是计算机中通常作为整体处理,也被称为记录。

    四、数据项

        一个数据元素可以由若干个数据项组成,数据项是数据不可分割的最小单位。

    五、数据对象

       数据对象是性质相同的数据元素的集合,是数据的子集

    六、逻辑结构和物理结构

    什么是逻辑结构

        逻辑结构是指数据对象中数据元素之间的相互关系,逻辑结构分为以下四种:

        1.集合结构

         集合结构中的数据元素除了同属于一个集合外,他们之间没有其他关系


    2.线性结构

    线性结构中的数据元素间是一对一的关系  


    3.树形结构

    树形结构中的数据元素之间存在一种一对多的层次关系


    4.图形结构

    图形结构的数据元素是多对多的关系



    从之前的例子可以看出,逻辑结构是针对具体问题的,是为了解决某个问题在对问题理解的基础上,选择一个合适的数据表示数据元素之间的逻辑关系

    什么是物理结构?

        物理结构是指数据的逻辑结构在计算机中的存储形式。

        数据的存储结构应正确反映数据元素间的逻辑关系,如何存储数据元素的逻辑关系,是实现物理结构的重点和难点。

    1.顺序存储结构

        顺序存储 结构是把数据元素存储哎地址连续的存储单元里,其数据间的逻辑关系和物理关系是一致的


    2.链式存储结构

    链式存储结构是把数据元素存放在任意的存储单元里,这组存储单元可以是连续的,也可以是不连续的。


    逻辑结构是面向问题的,物理结构是面向计算机的。


    抽象数据类型

        抽象数据类型(Abstract Data Type,ADT)是指一个数学模型及定义在该模型上的一组操作,抽象数据类型的定义

        仅取决于他的一组逻辑特性,而与其在计算机内部如何表示和实现无关。





    展开全文
  • 米 教材:数据结构(C语言版) 严蔚敏吴伟民编著 清华大学出版社 计算机科学与技术学院 开设本课程的背景: 数据结构是计算机相关专业的一门 重要的专业基础课它主要研究计算机加 工对象的逻辑结构在计算机中的存储结 构...
  • C语言程序设计与数据结构 C语言程序设计与数据结构 C语言程序设计与数据结构 第12章 数据结构绪论 教学目标通过本章的学习使读者能够掌握数据结 构的概念和有关的术语 C语言程序设计与数据结构 12.1 什么是数据结构 ...
  • 这里写自定义目录标题数据结构绪论基本概念和术语数据数据元素数据项数据对象数据结构逻辑结构与物理结构逻辑结构物理结构(存储结构)功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片...

    自己在看《大话数据结构》这本书,顺便需要练习使用博客,就顺便把自己的读书笔记发上来啦。

    数据结构绪论

    基本概念和术语

    你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。

    数据

    数据:是描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别,并输入给计算机处理的符号集合。
    这里说的数据,其实就是符号,这些符号必须具备两个前提:

    1. 可以输入到计算机中
    2. 能被计算机程序处理

    对于数值型数据,可以进行数值计算。
    对于字符数据类型,需要进行非数值的处理。而声音、图片、视频等是可以通过编码手段变成字符数据来处理的。

    数据元素

    数据元素:是组成数据的,有一定意义的基本单位,,在计算机中通常作为整体处理。也被称为记录。

    数据项

    数据项:一个数据元素可以由若干个数据项组成。
    **数据项是数据不可分割的最小单位。**但真正讨论问题时,数据元素才是数据结构中建立数据模型的着眼点。就像我们讨论一部电影时,是讨论这部电影角色这样的“数据元素”,而不是针对这个角色的姓名或者年龄这样的“数据项”去研究分析。

    数据对象

    数据对象:是性质相同的数据元素的集合是数据的子集。
    性质相同是指数据元素具有相同数量和类型的数据项。
    在不产生混淆的情况下,我们都将数据对象简称为数据。

    数据结构

    不同数据元素之间的关系称之为结构。
    数据结构:是相互之间存在一种或多种特定关系的数据元素的集合。
    为了编出一个好的程序,必须分析待处理对象的特征及各处理对象之间存在的关系。这也就是研究数据结构的意义所在。
    按照视点不同,数据结构分为逻辑结构与物理结构

    逻辑结构与物理结构

    逻辑结构

    逻辑结构是指对象中数据元素之间的相互关系。

    1. 集合元素。各个数据元素是平等的。
    2. 线性元素。一对一。
    3. 树形结构。一对多。
    4. 图形结构。多对多。

    逻辑结构是针对具体问题的,是为了解决某个问题,在对问题理解的基础上,选择一个合适的数据结构表示数据元素之间的逻辑关系。

    物理结构(存储结构)

    物理结构是指数据的逻辑结构在计算机中的存储形式。
    即如何把数据元素存储到计算机的存储器上,存储器主要针对内存而言。硬盘、光盘、软盘等外部存储器的数据组织通常是用文件结构来描述的。
    数据的存储结构应该正确反应数据元素之间的逻辑关系。
    存储结构形式分为两种:

    顺序存储结构

    顺序存储结构是把数据元素存放在地址连续的存储单元里,其数据间的逻辑关系和物理关系是一致的。
    说白了就是排队站队。
    例如:数组就是这样的顺序存储结构。

    链式存储结构

    **链式存储结构是把数据元素存储在任意的存储单元里,这组存储单元可以是连续的,也可以是不连续的。**数据元素的存储关系并不能反映其逻辑关系,因此需要用一个指针存放数据元素的地址,这样通过地址就可以找到相关数据元素的位置。
    逻辑结构是面向问题的,而物理结构就是面向计算机的,其基本的目标就是将数据及其逻辑关系存储到计算机的内存中。

    抽象数据类型

    数据类型

    数据类型是指一组性质相同的值的集合及定义在此集合上的一些操作的总称。
    数据类型是按照值的不同进行划分的。在高级语言中,每个变量、常量和表达式都有各自的取值范围。类型就用来说明变量和表达式的取值范围和所能进行的操作。
    抽象是指抽取出事物具有的普遍性的本质。

    抽象数据类型(ADT)

    抽象数据类型是指一个数学模型及定义在该模型上的一组操作。 抽象数据类型的定义仅取决于它的一组逻辑特性,而与其在计算机内部如何表示和实现无关。
    “抽象”的意义在于数据类型的数学抽象特征。
    抽象数据类型体现了程序设计中问题分解、抽象和信息隐藏的特性。 抽象数据类型把实际生活中的问题分解为多个规模小且容易解决的问题,然后建立一个计算机能处理的数据模型,并把每个功能模块的实现细节作为一个独立的单元,从而使具体实现过程隐藏起来。

    展开全文
  • 数据结构
  • 文章目录概述重点/难点/要点知识点整理练习 概述 ...本章要抓住两条主线,一条主线是数据结构,包括数据结构的研究对象及相关概念,另一条主线是算法,包括算法的相关概念、描述方法以及时间复杂度的

    概述

    本章介绍数据结构和算法的基本概念,以及算法分析的基本方法,是学习后续各章的基础。本章知识点的组织结构如下图所示:
    在这里插入图片描述

    重点/难点/要点

    本章的重点是

    1. 数据结构的基本概念;
    2. 数据的逻辑结构、存储结构以及二者之间的关系;
    3. 算法及特性;
    4. 大O记号的表示。

    本章的难点是

    1. 抽象数据类型的定义和使用;
    2. 算法的时间复杂度分析。

    本章要抓住两条主线,一条主线是数据结构,包括数据结构的研究对象及相关概念,另一条主线是算法,包括算法的相关概念、描述方法以及时间复杂度的分析方法。
    数据结构部分,从问题的求解过程入手,理解“数据结构+算法=程序”;注意强调数据结构和程序设计之间的关系。数据结构部分的核心概念是数据元素,注意通过具体实例引申数据元素之间的关系;数据结构部分的重要概念是数据结构,要抓住两个方面:逻辑结构和存储结构,并注意把握二者之间的关系。
    算法部分,要以算法的概念和特性为基本点,并在以后的教学中注意应用算法的特性,不要孤立地学习概念,注意概念的引申和应用;对于算法时间性能的分析,要将注意力集中在增长率上,即基本语句执行次数的数量级,强调三个要点:基本语句、执行次数、数量级,算法时间性能分析的结果是用大O记号表示的数量级。
    最后,强调数据结构和算法分析都是针对大量数据,即大量数据的组织、大量数据的处理效率。随着计算机运算速度的增长,对于能够处理大量数据的快速程序的需求也变得日益强烈。

    知识点整理

    1. 程序设计的一般过程是“问题→想法→算法→程序”,其实质是数据表示和数据处理。数据表示的主要任务是从问题抽象出数据模型,并将该模型从计算机机外表示转换为计算机机内表示;数据处理的主要任务是对问题的求解方法进行抽象描述,即设计算法。
    2. 数据结构是研究非数值问题中计算机的操作对象以及它们之间关系和操作的学科。
    3. 数据元素是数据的基本单位,在计算机程序中通常作为一个整体进行考虑和处理。数据元素是讨论数据结构时涉及的最小数据单位,其中的数据项一般不予考虑。
    4. 数据结构是指相互之间存在一定关系的数据元素的集合。按照视点的不同,数据结构分为逻辑结构和存储结构。数据的逻辑结构是指数据元素之间逻辑关系的整体,数据的存储结构是数据及其逻辑结构在计算机中的表示。
    5. 根据数据元素之间逻辑关系的不同,数据结构分为四类:集合、线性结构、树结构、图结构。
    6. 数据结构通常有两种存储方法:顺序存储结构和链接存储结构。
    7. 抽象数据类型是一个数据模型(即数据结构)以及定义在该结构上的一组操作的总称。
    8. 算法是对特定间题求解步骤的一种描述,是指令的有限序列。算法必须满足下列五个重要特性:输入、输出、有穷性、确定性、可行性。
    9. 一个“好”算法除了要满足算法的五大特性外,还要具备下列特性:正确性、健壮性、简单性、抽象分级、高效性等。
    10. 常用的描述算法的方法有自然语言、流程图、程序设计语言和伪代码等,其中,伪代码是比较合适的描述算法的方法,被称为“算法语言”或“第一语言”。
    11. 度量一个算法的效率有两种方法:事后统计的方法和事前分析估算的方法。
    12. 撇开与计算机软、硬件有关的因素,影响算法时间代价的最主要因素是问题规模。问题规模是指输入量的多少,一般来说,它可以从问题描述中得到。
    13. 为了客观地反映一个算法的执行时间,可以用算法中基本语句的执行次数来度量算法的工作量。基本语句是执行次数与整个算法的执行次数成正比的语句。
    14. 时间复杂度通常用大O记号表示,这种方法实际上是一种估算方法。
    15. 求解算法的时间复杂度的简便方法是:找出所有语句中执行次数最多的那条句作为基本语句,计算基本语句执行次数的数量级并放入大O记号中。

    练习

    问题抽象与程序设计
    人和计算机有效交流的途径是(A)。
    A.程序 B.语言 C.语句 D.算法
    程序设计的关键是(C)。
    A.数据结构和算法 B.数据表示和数据处理 C.A和B都对
    本课程讨论所有问题的数据组织和处理。(×)
    程序设计过程中运用的思维是(D)。
    A.逻辑思维 B.抽象思维 C.形象思维 D.计算思维

    数据结构基本概念
    逻辑结构与数据元素本身的内容和形式无关。(√)
    基于某种逻辑结构之上的基本操作,其实现是唯一的。(×)
    理论上讲,存储结构与程序设计语言无关。(×)
    讨论数据结构时的着眼点是(B)。
    A.数据 B.数据元素 C.数据对象 D.数据项
    编译程序处理的数据是(C)。
    A.语言B.语句C.源程序D.字符串
    按照视点的不同,数据结构分为逻辑结构和存储结构,其中的视点指的是(A)。
    A.内存 B.外存 C.文件 D.问题

    算法基本概念
    流程图是最常用的描述算法的方法。(×)
    同程序设计语言一样,伪代码也有国际标准。(×)
    算法的确定性要求对于相同的输入,一定会得到相同的输出。(√)
    算法必须满足正确性,否则就没有存在的价值。(×)
    (D)被称为“算法语言”。
    A.自然语言 B.流程图 C.程序设计语言 D.伪代码

    算法分析
    算法的时间复杂度都要通过算法中的基本语句的执行次数来确定。(×)
    算法的时间复杂度是对算法所消耗资源的一种精确计算。(×)
    算法的空间复杂度指的是输入/输出数据占用的空间以及执行算法的辅助空间。(×)
    就地算法或原地算法指的是算法在执行过程中不需要辅助空间。(×)
    以下程序段中,问题规模是(H),基本语句是(C),时间复杂度是(G)。
    A.(1)
    B.(2)
    C.(3)
    D.(4)
    E.O( n 2 n^2 n2)
    F.O( M 2 M^2 M2)
    G.O(m×n)
    H.O(m×n/2)

    (1)for(i=0;i<m;i++)
    {
    (2)	for(j=0;j<n/2;j++)
    (3)		cout<<data[i][j]; 
    (4)	cout<<endl;
    }
    
    

    参考资料:《数据结构(从概念到C++实现)》清华大学出版社,王红梅

    展开全文
  • 数据结构绪论PPT学习教案.pptx
  • 数据结构 绪论PPT学习教案.pptx
  • 第一章 绪 论教学目的与要求了解数据结构研究的对象数据结构的发展及地位 掌握实际问题抽象成数学模型的概念掌握基本概念及基本术语掌握算法描述的语言及算法分析的方法重点与难点重点概念算法分析的方法 难点算法...
  • 严蔚敏数据结构绪论PPT学习教案.pptx
  • 数据结构绪论精选.ppt

    2020-09-07 05:40:17
    数据结构绪论精选.ppt
  • [1]张乃孝算法与数据结构--C语言描述(第2版) 高等教育出版社 2006年1月 [2] 李春葆数据结构习题与解析第二版清华大学出版社2003年12月 [3] 李春葆数据结构程序设计题典清华大学出版社2002年7月 ;[4]耿国华 数据结构-...
  • 大话数据结构真是一本不错的书。  何为数据结构,书中的定义是这样的,相互之间存在的一种或者多种特定关系的数据元素的集合。在看郝兵老师的数据结构的时候,他是这么解释的,数据结构是元素之间的关系。这种关系...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 11,015
精华内容 4,406
关键字:

数据结构绪论

数据结构 订阅