大话数据结构-数据结构绪论①

  • 一、开场白
  • 二、你数据结构怎么学的?
  • 三、数据结构起源
  • 四、基本概念和术语
  • 五、逻辑结构和物理结构
    • 1、逻辑结构
    • 2、物理结构
  • 六、抽象数据类型
    • 1、数据类型
    • 2、抽象数据类型
  • 七、总结回顾

一、开场白

学习数据结构的目的,既不是为了工作为了钱,也不是为了学位和考试,只是为了更好地去感受编程之美!

二、你数据结构怎么学的?

说明数据结构是程序员必备技能,无论学习上还是工作上都离不开数据结构这个学科,在学习完数据结构以及查找、排序等算法后,需要理解其原理及实现方法,并在此基础上实现其它复杂的算法,起到举一反三的效果。

三、数据结构起源

数据结构是一门研究非数值计算的程序设计问题中的操作对象,以及它们之间的关系和操作等相关问题的学科
简单说:把生活中的实际问题抽象出一个合适的数据模型,设计求解这个数据模型的算法,然后通过编写程序实现算法,让计算机解决生活中的实际问题。

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

四、基本概念和术语

  1. 数据:是描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别,并输入给计算机处理的符号集合。(有数值数据和非数值数据
  2. 数据元素:是组成数据的、有一定意义的基本单位,在计算机中通常作为整体处理,也称为记录。(相当于人类中的人,生物中的种群表示同一属性的类
  3. 数据项:一个数据元素可以由若干个数据项组成。数据项是数据不可分割的最小单位
  4. 数据对象:是性质相同的数据元素的集合,是数据的子集。
  5. 数据结构:是相互之间存在一种或多种特定关系的数据元素的集合。(数据元素并不是孤立的,具有内部联系的数据集合)

五、逻辑结构和物理结构

1、逻辑结构

是指数据对象中数据元素之间的相互关系

  1. 集合结构:集合结构中的数据元素除了同属一个集合外,它们之间没有其他关系。(类似数学中的集合)

  2. 线性结构:线性结构中的数据元素之间是一对一的关系。


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

  1. 图形结构:图形结构的数据元素是多对多的关系。

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

2、物理结构

是指数据的逻辑结构在计算机中的存储形式
如何存储数据元素之间的逻辑关系,是实现物理结构的重点和难点!

  1. 顺序存储结构:是把数据元素存放在地址连续的存储单元里,其数据间的逻辑关系和物理关系是一致的。(数组的内存分布)
  2. 链式存储结构:是把数据元素存放在任意的存储单元里,这组存储单元可以是连续的,也可以是不连续的。(类似我们玩过的密室逃脱,每一关是通过线索串联起来,每一个关卡只知道下一关卡的位置,无法直接知道第三关卡的位置,只能通往第二关卡寻到第三关卡的位置,存储的位置比较灵活)

六、抽象数据类型

1、数据类型

是指一组性质相同的值得集合及定义在此集合上的一些操作的总称。

  • 原子类型:是不可再分解的基本类型,包括整型、实型、字符型等。
  • 结构类型:由若干个类型组合而成,是可以在分解的。例如整型数组是由若干个整型数据组成的。
    抽象是指抽取出事物具有的普遍性的本质

2、抽象数据类型

是指一个数学模型及定义在该模型上的一组操作。
抽象数据类型体现了程序设计中问题分解、抽象和信息隐藏的特性。

七、总结回顾

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

【大话数据结构-数据结构绪论①】相关推荐

  1. 算法模版:模拟数据结构之绪论【沈七】

    算法模版:模拟数据结构之绪论 前言 什么是数据结构? 先看数据 再看结构 一些术语 逻辑结构 储存结构 完结散花 参考文献 前言 唤我沈七就好. 算下来应该是有两周没更新了. 是因为最近一直在研究数据 ...

  2. 【数据结构】绪论部分

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

  3. 严版数据结构总结--绪论

    严版数据结构总结--绪论 一.绪论 1.1什么是数据结构 1.2基本概念和术语 1.3抽象数据类型的表示与实现 1.4算法与算法分析 抱着试一试的心态在CSDN上写博客,记录下我对严版数据结构的粗浅认 ...

  4. 数据结构One——绪论

    本喵是FW视频封面最终版 宝子,你不点个赞吗?不评个论吗?不收个藏吗? 最后的最后,关注我,关注我,关注我,你会看到更多有趣的博客哦!!! 喵喵喵,你对我真的很重要. 目录 前言 绪论 1.1数据结构 ...

  5. [数据结构]数据结构简介和顺序表

    目录 什么是数据结构 数据结构的特性 线性表 顺序表 创建一个动态顺序表 顺序表的增删查改 尾插和尾删除 尾插 头插头删 头插 头删 任意位置的插入和删除 插入 删除 查找和打印 总结 这天,小明和小 ...

  6. python什么是数据结构_python算法与数据结构-数据结构介绍(38)

    一.什么是数据结构 数据结构,直白地理解,就是研究数据的存储方式. 我们知道,数据存储只有一个目的,即为了方便后期对数据的再利用,就如同我们使用数组存储 {1,2,3,4,5} 是为了后期取得它们的值 ...

  7. 复制成绩表计算机专业的表结构,数据结构 数据结构与算法期末实验考试成绩表.doc...

    数据结构 数据结构与算法期末实验考试成绩表.doc (2页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 9.90 积分 数据结构与算法期末实验考试成绩表 ...

  8. 数据结构-王道-绪论

    目录 绪论 四种逻辑关系 储存方式 空间复杂度 绪论 数据:客观事物的符号表示.在计算机科学中指的是所有能输入到计算机中冰杯计算机程序处理的符号的总称. 数据又分为数值型数据,非数值型数据 数据元素: ...

  9. 《王道》数据结构之绪论(一)

    数据结构入门之绪论(一) 大纲 一.数据结构 1.1 基本概念 1.2 数据结构三要素 1.2.1 逻辑结构 1.2.2 物理结构 1.2.3 数据运算 二.算法 2.1 基本概念 2.1.1 五个特 ...

  10. 数据结构复习——绪论

    临近期末,线上考试的科目还没有定下来 但想着数据结构本身对计算机专业的人就很重要,那就趁此机会重新过一遍! 今天略有空当,就先总结绪论一篇 有兴趣的同学可以跟我一起学习呀QWQ 本文章以 严书--&l ...

最新文章

  1. android音乐编辑器汉化版,WaveEditor手机版
  2. 欢迎来到OpenGL的世界
  3. html使用element ui_Kendo UI for jQuery使用教程:自定义小部件(二)
  4. 欧拉函数的性质及其证明
  5. 【DP】【容斥】Nice to Meet You(AT3634)
  6. php输出分组,ThinkPHP 项目分组中的模板输出
  7. STL中bitset的用法的整理
  8. php做游戏登录服务器,游戏登陆服务器php简单实现
  9. es6 Class 的静态方法
  10. Mahout的一些推荐算法
  11. [Web Chart系列之四] 图形布局-Layout 之js设计实现
  12. android重要的对象
  13. Java中,什么是最终类与最终方法?它们的作用是什么?
  14. R语言模拟:Bias Variance Trade-Off
  15. 蒙特卡罗(Monte Carlo) 模拟
  16. 兜兜转转 - 2019开启CSDN博客的新篇章
  17. 10php1c,很急的一個問題,請幫幫忙
  18. 深度和广度优先算法题
  19. MATLAB学习心得~
  20. Pytorch(gpu),cuda,cudnn安装

热门文章

  1. 小技巧:电脑怎么卸载软件?
  2. Linux离线安装pyhive使用 python连接hive
  3. 精心挑选的100多种机器学习数据集
  4. 论文笔记:针对盲化的 RSA算法的水平聚类侧信道攻击
  5. 支付系统详解:清结算系统
  6. 解决Tomcat乱码
  7. 测试 - 用例篇 - 细节狂魔
  8. Android,六款安卓车机大PK
  9. vsftpd 虚拟用户详细配置
  10. linux操作系统实用教程课后答案,Linux操作系统案例教程课后习题答案