zoukankan      html  css  js  c++  java
  • 数据结构(C语言)分享笔记:数据结构的逻辑层次、存储层次

    [1] 严格意义上数据结构的概念

      数据结构,一个简单的定义:相互之间存在一种或多种特定关系的数据元素的集合。即:数据结构 = 元素集合 + 元素间关系的集合

      在讨论数据结构时,可以基于两个不同的层次:1.逻辑层次  2.存储层次 ( 很多专业书中也写为:逻辑结构、存储结构。但为了避免概念间的混淆,我认为 “层次” 这一表述方式更贴切 ) 。逻辑层次,是指对描述对象的单纯的数学抽象。例如:一个科研小组由1名导师、2名研究生和6名本科生构成,导师指导2名研究生,每个研究生分别指导3名本科生。将这个小组视为一个数据结构,则从逻辑层次来看,这个数据结构是一个简单的树形结构。存储层次,是指数据结构在计算机存储器中的映射,即通过特定的存储方法来反映数据结构中的逻辑关系

    [2] “程序员更常用到的” 数据结构的概念

      我们在实际情况中很少能直接涉及到数据结构的存储层次:数据结构在存储器中的物理位置——这种很底层的技术。我们更多地是基于高级语言来讨论数据结构的,如C语言。

      比如:我们用C语言中的一维数组来描述存储层次中的顺序存储结构,用C语言中的指针来描述存储层次中的链式存储结构。在这种情况下,我们可以把C语言抽象地看作一个执行C指令和C数据类型的虚拟处理器,则我们讨论的存储层次实际上是基于虚拟处理器的层次而这个层次才是和我们接触最多的

    [3] 学习数据结构时的注意点

      “数据结构” 这门课程虽然常与计算机,程序设计等联系在一起,但其实它是一门独立的课程,是一门理论性很强的课程。在学习的时候,经常要用到逻辑的、抽象的思维方式。同时也要多通过写程序来练习,这样才能避免纸上谈兵,提高自己的编程水平。

  • 相关阅读:
    通过Javascript调用微软认知服务情感检测接口的两种实现方式
    Microsoft Flow 概览
    使用PowerApps快速构建基于主题的轻业务应用 —— 进阶篇
    从三个语言(C++,Java,C#)的几个性能测试案例来看性能优化
    自己动手,打造轻量级VSCode/C#环境代替LinqPad
    2015年总结
    将知识变成你的技能点
    瞎子摸象与刻舟求剑
    俺的追求,下一个五年的指导纲领
    工作中任务管理的四个原则和四个技能
  • 原文地址:https://www.cnblogs.com/EarthPioneer/p/9117843.html
Copyright © 2011-2022 走看看