文章目录

  • 数据结构的研究内容
  • 数据结构研究的内容小结

数据结构的研究内容

早期,计算机主要用于数值计算:

  • 首先,分析问题、提取操作对象,
  • 然后,找出操作对象之间的关系,用数学语言加以描述,建立相应数学方程。
  • 最后,求解数学方程:高斯消元法、有限元法,差分法……

随着计算机应用领域的扩展,计算机越来越多地用于非数值的计算。

【例1】:学生学籍管理系统

  • 操作对象:每位学生的信息(学号、姓名、性别、籍贯、专业等)。
  • 操作算法:查询、插入、修改、删除等。
  • 操作对象之间的关系:线性关系。
    • 除了开头行和结尾行的操作对象,其余操作对象的行前、后都有其他操作对象,操作对象就像被一根绳子串起来的关系称为线性关系。
  • 数据结构:线性数据结构、线性表。


【例2】:人机对弈问题

计算机之所以能和人对弈是因为已经将对弈的策略在计算机汇总存储好。由于对弈的过程是在一定规则之下进行的,所以,为里使计算机能灵活对弈,就必须把对弈过程中所有可能发生的情况及相应的对策都加以考虑。

  • 以井字棋为例,初始状态是一个空的棋盘格局。

    • 对弈开始后,每下一步棋,则构成一个新的棋盘格局,且对于上一个棋盘格局的可能选择可以有多种形式,因此整个对弈过程就如同下图所示的一棵倒长的树。
    • 在这棵树中,从初始状态(根结点)到某一个最终格局(叶结点)的一条路径,就是一次具体的对弈过程。
  • 计算机操作对象:各种棋局状态,即描述棋盘的格局信息。
  • 计算机的算法:走棋,即选择一种策略使棋局状态发生变化(由一个格局派生出另一个格局)。
  • 操作对象之间的关系:非线性关系、树。

【例3】:最短路径问题

从城市 A 到城市 B 有多条线路,但是每条线路的交通费不同,那么,如何选择一条线路,使得从城市 A 到城市 B 的交通费用最少?

  • 解决方法:可以将这类问题抽象为图的最短路径问题。

    • 图中的顶点代表城市,有向边代表两个城市之间的通路,边上的权值代表两个城市之间的交通费。
    • 求解 A 到 B 的最少交通费用,就是要在有向图中 A 点(源点)到达 B 点(终点)的多条路径中,寻找一条各边权值之和最小的路径,即最短路径。

  • 操作对象:各地点及路的信息。
  • 计算机算法:设置信号灯,求出各个可同时同行的路的集合。
  • 对象之间的关系:非线性关系、网状结构。

数据结构研究的内容小结

综上所述

  • 这些问题的共同点是无法用数学的公式或程序来描述,而是一些非数值计算的程序设计问题。
  • 描述非数值计算问题的数学模型不再是数学方程,而是如:表、树、图之类的具有逻辑关系的数据。
  • 数据结构:是一门研究非数值计算的程序设计中计算机的操作对象以及他们之间的关系和操作的学科。

【数据结构(1)】1.1 数据结构的研究内容相关推荐

  1. 【数据结构1.3笔记】研究内容

    1.3研究内容 数据结构(D,S) {逻辑结构: {物理结构(存储结构) {数据的运算 1.逻辑结构 1 集合:集合,没有逻辑关系 2 线性结构 "一对一" 3树形结构 层次关系 ...

  2. 数据结构与算法入门---数据结构类型

    数据结构与算法入门---数据结构类型 数据的逻辑结构 数据的逻辑结构指数据元素之间的逻辑哦关系(和实现无关) 分类一:线性结构和非线性结构 线性结构:有且只有一个开始结点和一个终端节点,并且所有节点都 ...

  3. 计算机应用数据结构是什么,应用数据结构

    应用数据结构(application data structure)是数据结构在很多软件数据库等都是必不可少的一种具有一定逻辑关系,在计算机中应用某种存储结构,并且封装了相应操作的数据元素的集合.它包 ...

  4. 数据结构绪论——什么是数据结构?

    为什么写这篇文章 <数据结构>这门课有很多教材,各种概念十分混乱.为了解决概念之间的矛盾,写下这篇博客. 比如严蔚敏的书中存在数据类型和数据结构的混乱,数据类型和ADT的混乱.书上所写本就 ...

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

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

  6. 数据结构—笔记整理—初识数据结构

    学习之路,长路漫漫,写学习笔记的过程就是把知识讲给自己听的过程. 目录 数据结构初定义 常用数据结构 这 8 种数据结构有什么区别呢? ①.数组 ②.链表 ③.栈 ④.队列 ⑤.树 ⑥.堆 ⑦.图 ⑧ ...

  7. NSFC: 研究内容可选的结构

    摘要: 研究内容一般有两种结构: 平行结构与层次结构. 描述研究内容的时候, 需要注意对研究目标支撑. 1. 平行结构 有的研究项目本身是总分结构, 这样, 每个部分之间就是平行的关系. 例 1. ( ...

  8. <初识数据结构+算法实现>数据结构(C语言版)

    新晓本已悦人心,故知更加理解深! 目录 前言: ●本篇博文基于<数据结构>(C语言版)严蔚敏教授.吴伟民教授.李冬梅教授编著的教材知识及框架主线,以及参考借阅其他相关资料,结合作者的学习所 ...

  9. python数据结构视频百度云盘_数据结构与算法Python视频领课

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 课程简介: 本课程包含Python编程基础的基本语法及变量,基本数据结构,Code Structure,Function.让学生在学会Python基础的同 ...

最新文章

  1. 【LeetCode】230#二叉搜索树中第K小的元素
  2. 【Arduino】利用FDC2214加LCD1602电容计测量A4纸张数量
  3. 音频处理七:(极坐标转换)
  4. springmvc中获取request对象,加载biz(service)的方法
  5. Jmeter参数化 CSV Data Set Config界面说明
  6. 平台的本质——保险公司互联网平台建设系列
  7. SQL调优技巧:统计信息(文末福利)
  8. java 下载速度计算_测量Java下载速度
  9. LINE登录手机后怎样更换别个账号_2020年全国青少年禁毒知识竞赛在线答疑来了(附登录入口)...
  10. mmdetection tools工具梳理
  11. Burpsuite的CA证书安装
  12. 古剑奇谭显示服务器维修,《古剑奇谭网络版》角色转服功能说明公告
  13. 台式机主板常见接口资料
  14. c语言现有21根火柴,python应用-21根火柴游戏
  15. [转]解决adb not responding you can wait more
  16. android需要电脑输入吗,Android 远程输入法,用电脑给手机输入文字
  17. ORACLE学习详解
  18. 千锋教育威哥学Java教程之Java基础学习路线
  19. 解决Teamviewer密码总是在变的问题
  20. 2020年末的一些职业规划思考

热门文章

  1. National Australia Group UK increases business flexibility with
  2. “3%”与“低个位数”,暴雪为什么要跟网易玩数字游戏?
  3. 深度学习:什么是backbone,benchmark,baseline
  4. ..\OBJ\GPIO.axf: Error: L6915E: Library reports error: __use_no_semihosting was requested, but _sys_
  5. 鹅开口易得什么症状 什么药防治鹅开口病快
  6. 天正暖通天圆地方在哪_天正暖通8.5命令集锦
  7. .net Framework 源代码 · ScrollViewer
  8. JMeter——请求参数类型
  9. matlab 三维立体图,(精)MATLAB三维图形绘制.ppt
  10. 使用云监控实现GPU云服务器的GPU监控和报警(下)-云监控插件监控