1.1 什么是数据结构

1.2 基本概念和术语

1.3 抽象数据类型的表示与实现

1.4 算法和算法分析

  1.4.1 算法

  1.4.2 算法设计的要求

  1.4.3 算法效率的度量

  1.4.4 算法的存储

1.1 什么是数据结构

  一般来说,用计算机解决一个具体的问题时,大致需要经过下列几个步骤:

    1.首先要从具体问题抽象出一个适当的数学模型

    2.然后设计一个解此数学模型的算法

    3.最后编出程序,进行测试,调整直至得到最终解答

  寻求数学模型的实质是分析问题,从中提取操作的对象,并找出这些操作对象之间含有的关系,然后用数学的语言加以描述。

  1968年美国唐·欧·克努特教授开创了“数据结构”的最初体系,他所著的《计算机设计技巧》第一卷《基本算法》是第一本较系统地阐述数据的逻辑结构和存储结构及其操作的著作。从20世纪60年代末到70年代初,出现了大型程序,软件也相对独立,结构程序设计成为程序设计方法学的主要内容,人们就越来越重视“数据结构”,认为程序设计的实质是对确定的问题选择一种好的结构,加上设计一种好的算法。

        数据结构+算法=程序

  

1.2 基本概念和术语

  数据(data)是对客观事物的符号的总称。在计算机科学中是指所有能输入到计算机中并被计算机程序处理的符号的总称(信息的载体)。它是计算机程序加工的“原料”。例如,一个利用数值分析方法解代数方程的程序,其处理对象是整数和实数;一个编译程序或文字处理程序的处理对象是字符串。因此,对计算机科学而言,数据的含义极为广泛,如图像、声音等都是可以通过编码而归之于数据的范畴。

  数据元素(data element)是数据的基本单位,在计算机程序中通常作为一个整体进行考虑和处理。有时,一个数据元素可由若干个数据项(data item)组成,例如,一本书的书目信息为一个数据元素,而书目信息中的每一项(如书名、作者名等)为一个数据项数据项是数据不可分割的最小单位(具有独立含义)。

  数据对象(data object)是性质相同的数据元素的集合,是数据的一个子集。例如,整数数据对象是集合N={0,±1,±2,...},字母字符数据对象是集合C={‘A’,‘B’,...,'Z'}。

  数据结构(data structure)是相互之间存在一种或多种特定关系的数据元素的集合。在任何问题中,数据元素都不是孤立存在的,而是在他们之间存在着某种关系,这种数据元素相互之间的关系称为结构(structure)。根据数据元素之间关系的不同特性,通常有下列4类基本结构:

    (1)集合  结构中的数据元素之间除了“同属于一个集合”的关系外,别无其他关系;

    (2)线性结构  结构中的数据元素之间存在一个对一个的关系;(元素间的关系是1:1)

    (3)树形结构  结构中数据元素之间存在一个对多个的关系;

    (4)图状结构网状结构  结构中数据元素之间存在多个对多个的关系。

数据结构的形式定义为:数据结构是一个二元组

  Data_Structure=(D,S)

其中,D是数据元素的有限集,S是D上关系的有限集。(D是数据对象,S是该对象中各数据元素之间的关系的有限集)

转载于:https://www.cnblogs.com/sanqiansi/p/11290603.html

第一章——数据结构之绪论相关推荐

  1. 大话数据结构 摘录 第一章 数据结构绪论

    文章目录 启示:数据结构 学习数据机构的重要性 数据结构引发的案例 数据结构的起源 程序设计=数据结构+算法 基础概念与术语 数据 数据元素 数据项 数据对象 数据结构 数据结构:是相互之间存在一种或 ...

  2. 数据结构 第一章 数据结构绪论

    数据结构是一门研究非数值计算的程序设计问题中的操作对象,以及它们之间的关系和操作等相关问题的学科. 数据:所有能被输入到计算机中,且能被计算机处理的符号的集合.是计算机操作的对象的总称. 数据元素:数 ...

  3. 读书笔记-《大话数据结构》第一章数据结构绪论

    1.3数据结构的起源 数据结构:是一门研究非数值计算的程序设计问题中的操作对象,以及它们之间的关系和操作等相关问题的学科. 程序设计=数据结构+算法 1.4基本概念和术语 1.4.1数据:描述客观事物 ...

  4. 第一章 数据结构与算法-前言

    Hello,I'm 郭永峰,一名IT从业者,也是一名Java Sharer.Teacher.欢迎添加微信号或者QQ号,一起学习交流,微信与QQ同号(1030103135).目前在腾讯课堂也出了一些教程 ...

  5. 数据结构与算法(第一章 数据结构的基本概念 )

    说起数据结构与算法,他们之间的关系是怎么样的呢?某位dalao曾经这样说过: The relationship between the data structures and algorithms l ...

  6. 数据结构—绪论(基本知识点第一章)

    第一章数据结构绪论 目录 第一章数据结构绪论 什么是数据结构? 1.3数据结构起源 1.4基本概念和术语 1.4.1数据 1.4.2数据元素 1.4.3数据项 1.4.4数据对象 1.4.5数据结构 ...

  7. 第1章 数字图像处理绪论

    文章目录 第一章 数字图像处理绪论 1.1 图像 1.2 数字图像处理 Digital Image Processing, DIP 参考书:<数字图像处理与分析>(第2版)李新胜/清华大学 ...

  8. 1微型计算机应用的例子,第一章 微型计算机概论.doc

    第一章 微型计算机概论.doc 还剩 9页未读, 继续阅读 下载文档到电脑,马上远离加班熬夜! 亲,喜欢就下载吧,价低环保! 内容要点: 第一章 微型计算机概论 绪论一.计算机的应用举一些实际应用的例 ...

  9. 全国计算机二级第一套ppt,全国计算机二级共基础第一章.ppt

    全国计算机二级共基础第一章 全国计算机等级考试 二级公共基础知识辅导 复习 计算机的工作原理是什么? 存储程序和原始数据,然后逐条执行. 什么是计算机程序? 很多指令的有机组合. 计算机程序 计算机算 ...

最新文章

  1. 又出现依赖冲突?试试 IDEA 解决 Maven 依赖冲突的高能神器!
  2. React事件机制 - 源码概览(下)
  3. suse的安装命令zypper,类似apt
  4. 天池 在线编程 区间统计(队列)
  5. pom.xml中的dependency标签的classifier
  6. 创建索引时,键列位置的重要性
  7. 没有聘礼,男友向我要一台奥迪汽车做陪嫁,房子是他婚前财产,正常吗?
  8. Accelerated C++ 习题答案
  9. React-组件生命周期
  10. 拥抱ARM妹子 序章!ARM妹子~~ 哥我来啦!
  11. 求助,我在Kell官网上下载的固件库,双击运行后显示错误:Zip integrity check failed.,该怎么解决?
  12. 用友nccloud 虚拟机
  13. html+css+js基础问答
  14. Android数据库框架Sugar的使用
  15. 叮当健康明日港股上市:拟募资3.4亿港元 单季期内亏损4亿
  16. 基于matlab毕业设计题目,matlab毕业设计题目.doc
  17. 中式装修之美,呈现出东方的诗意与唯美
  18. 超级照片美化技法:炫目的舞台光斑效果
  19. 计算机寻址范围字长,地址总线,字长,内存容量,寻址范围 之间的计算
  20. 压缩包的加密、去除密码、解密

热门文章

  1. Android中最简单的分享功能
  2. spring boot security ajax_Spring 和 SpringBoot 之间到底有啥区别?
  3. 【必看】Linux 下的 TCP参数优化
  4. 如何做好数字化体验管理,了解一下?
  5. 重磅发布 | 全球首个云原生应用标准定义与架构模型 OAM 正式开源
  6. Charles弱网测试(Web)
  7. linux 设置防火墙ssh,centos 8 ssh命令(服务器设置、防火墙配置等)
  8. JAVA1100集,唤醒错误11002
  9. python3 sleep 并发_Python3并发写文件与Python对比
  10. python绘图教程_pyplot绘图教程