数据结构基本概念

title: "数据结构基本概念"
date: 2015-05-02 23:48:15
categories: 数据结构
tags:


数据

  • 描述客观事物的符号
  • 可以输入到计算机
  • 能够被计算机程序处理

数据元素

  • 组成数据、有一定意义、也被称为记录
  • 比如:人类中人就是数据元素

数据项

  • 一个数据元素可以由很多数据项组成
  • 是不分割的最小单元
  • 比如:人是数据元素,眼睛、鼻子、嘴...是数据项。

数据对象

  • 性质相同数据元素的集合
  • 通常将数据对象称为 数据

数据结构 = 数据+关系

逻辑结构 ( 各个元素之间的关系 )

  • 集合: 平等
  • 线性: 一对一
  • 树形:一对多
  • 图形:多对多
physical
physical

逻辑结构为了解决具体问题,选择一个合适的数据结构表示数据元素之间的逻辑关系

物理结构

  • 逻辑结构在计算机中的存储形式

  • 顺序存储:

    • 需要提前申请大片内存。
    • 数据元素存放在地址连续的存储单元里。
    • 数据间 逻辑关系 = 物理关系
    • 物理节点 只存数据
    • 产生内存内部碎片。(内部碎片就是已经被分配出去(能明确指出属于哪个进程)却不能被利用的内存空间)。
    • 数据的插入/删除 复杂, 查询快。
  • 链式存储:

    • 数据间 逻辑关系 != 物理关系
    • 数据之间通过 指针,指向下一个元素的地址。
    • 物理结点存 数据 + 指针
    • 产生外部碎片。(外部碎片指的是还没有被分配出去(不属于任何进程),但由于太小了无法分配给申请内存空间的新进程的内存空闲区域。)
    • 数据的插入/删除快,查询慢。
    • memcached: 为了避免外部碎片产生,内存的分配规则是:slab+chunk 把大小空间分开,slab是聚合,chunk是大小。

总结

  • 逻辑结构 面向问题
  • 物理结构 面向计算机
  • 最终 目的 是 将 数据+逻辑关系 存到PC的内存中。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容