zoukankan      html  css  js  c++  java
  • 什么是数据结构

    问题求解

    数据结构及抽象数据类型

    算法的特性及分类

    算法的效率度量

    数据结构的选择和评价

    确定恰当的数据结构表示该模型

    数据结构与算法的核心--算法设计

    问题求解,设计方法,算法理论,数据模型,描述语言--->数据结构

    什么是数据结构?什么是算法?怎么理解两者之间的关系?

    解决问题的效率与数据结构有什么关系?

    什么是数据结构?

    官方统一定义没有。。。

    Sartaj Sahni《数据结构、算法与运用》

    “数据结构是数据对象,以及存在于该对象的实例和组成实例的数据元素之间的各种联系。这些联系可以通过定义相关的函数来给出。”

    Clifford A.Shaffer《数据结构与算法分析》

    “数据结构是(抽象数据类型AbstractDataType)的物理实现。”

    中文维基百科

    “数据结构(datastructure)是计算机中存储、组织数据的方式。通常情况下,精心选择的数据结构可以带来最优效率的算法。”

    要想有效地解决问题,需要考虑一下三个因素:

    数据对象在计算机中的组织方式。

    逻辑结构和物理存储结构

    数据对象必定与一系列加在其上的操作相关联。

    而完成这些操作所用的方法就是算法。

    用数据元素之间的关系的性质,来刻划数据结构的特点,可将数据结构分为:

    集合、线性结构、树型结构、图结构

    线性结构:是指数据元素之间是一种线性关系,或者说是前后关系,是一种一对一的关系,

    比如前面所讲书架上的书,除两端的书之外每一本书前面紧相邻的只有一本,后面紧相也 只有一本。

    树形结构:树型结构简称树结构,或称为层次结构。其关系称为层次关系,或称“父子关系”、“上下级关系”等。每一个节点可以有多于一个的“直接下级”。但是,它只能有唯一的“直接上级”。

    图结构:是一个多对多的关系,比如在学校里,一个教师可以带多门课,而该老师所讲的任何一门课可由多个学生选学,同时一个学生又可以选学多门课程。

    目的:是为了在处理数据元素时,借助元素之间的关系,实现对数据快速有效地处理。而计算机是具体工作的实施者。

    数据结构的研究涉及到以下三个方面:

    一是数据元素之间的逻辑关系,即数据的逻辑结构。

    二是将数据元素及其之间的关系,在计算机存储的方法,即数据的物理结构。

    三是作用于数据结构之上的运算。

  • 相关阅读:
    io学习
    asp.net文件上传进度条研究
    asp.net页面中的Console.WriteLine结果如何查看
    谨慎跟随初始目的不被关联问题带偏
    android 按钮特效 波纹 Android button effects ripple
    安卓工作室 日志设置
    安卓工作室 文件浏览器 android studio File browser
    一个新的Android Studio 2.3.3可以在稳定的频道中使用。A new Android Studio 2.3.3 is available in the stable channel.
    新巴巴运动网上商城 项目 快速搭建 教程 The new babar sports online mall project quickly builds a tutorial
    码云,git使用 教程-便签
  • 原文地址:https://www.cnblogs.com/privilege/p/11181697.html
Copyright © 2011-2022 走看看