当前位置: 首页 > news >正文

数据结构学习笔记—初识数据结构

文章目录

    • 1、初识
    • 2、逻辑结构
    • 3、存储结构
      • 3.1 顺序存储
      • 3.2 链式存储
      • 3.3 索引存储
      • 3.4 散列存储
      • 3.4 散列存储

1、初识

数据结构的开始:

  • 1968年美国克努特教授开创了数据结构的最初体系;
  • 计算机的圣经-《计算机程序设计的艺术》
  • 荣获1974年度的图灵奖

数据结构的意义

  • 锻炼思维,提高编程能力
  • 程序可复用性(效率)、可维护性、可读性

数据结构主要研究的是计算机数据间的关系,包括数据的逻辑结构存储结构及其操作

数据(Data):

  • 数据即信息的载体,是能够输入到计算机中并且能被计算机识别、存储和处理的符号总称。

数据元素(Data Element):

  • 数据元素是数据的基本单位,又称之为记录(Record)。一般,数据元素由若干基本项(或称字段、域、属性)组成。

数据结构的三个方面

  • 数据的逻辑结构
    • 线性结构
      • 线性表
    • 非线性结构
      • 树形结构
      • 图形结构
  • 数据的存储结构
    • 顺序存储
    • 链式存储
    • 索引存储
    • 链式存储
  • 数据的运算:检索、排序、插入、删除、修改等

2、逻辑结构

表示数据运算之间的抽象关系

按每个元素可能具有的直接前趋数和直接后继数将逻辑结构分为“线性结构”和“非线性结构”两大类。

  • 集合——数据元素间除“同属于一个集合”外,无其它关系

  • 线性结构——一个对一个,如线性表、栈、队列

  • 树形结构——一个对多个

  • 图状结构——多个对多个

3、存储结构

存储结构:逻辑结构在计算机中的具体实现方法。

存储结构是通过计算机语言所编制的程序来实现的,因而是依赖于具体的计算机语言的。

3.1 顺序存储

将数据结构中各元素按照其逻辑顺序存放于存储器一片连续的存储空间中

  • 如c语言的一维数组,如表 L=(a1,a2,……,an)的顺序结构

3.2 链式存储

将数据结构中各元素分布到存储器的不同位置,用地址(或链指针)方式建立它们之间的联系

数据结构中元素之间的关系在计算机内部很大程度上是通过地址指针来建立的。

3.3 索引存储

在存储数据的同时,建立一个附加的索引表,即索引存储结构 = 数据文件 + 索引表

3.4 散列存储

根据数据元素的特殊字段(称为关键字key),计算数据元素的存放地址,然后数据元素按地址存放(适合于查找频率高的)

3.4 散列存储

根据数据元素的特殊字段(称为关键字key),计算数据元素的存放地址,然后数据元素按地址存放(适合于查找频率高的)

http://www.xdnf.cn/news/533845.html

相关文章:

  • 用Caffeine和自定义注解+AOP优雅实现本地防抖接口限流
  • 玉米籽粒发育
  • spring boot 注解 @bean
  • 打卡30天
  • 【IDEA】删除/替换文件中所有包含某个字符串的行
  • ROS2简介
  • 关于ECMAScript的相关知识点!
  • 适合学人工智能的专业有哪些?
  • 【算法】滑动窗口动态查找不含重复字符的最长子串
  • 同一颗太阳:Australia、Austria、Arab、Africa、Augustus、August、Aurora、Athena
  • input组件使用type=“number“的时候,光标自动跳到首位
  • 深度学习基础——神经网络优化算法
  • 免费私有化部署! PawSQL社区版,超越EverSQL的企业级SQL优化工具面向个人开发者开放使用了
  • 游戏盾的功有哪些?
  • AGI大模型(27):LangChain向量存储
  • react事件绑定的方法
  • 桌面麒麟系统下的GMAC调试日志
  • HTTPS、SSL证书是啥?网站“安全小锁”的入门科普
  • 基于 STC89C52 的料仓物位监测系统设计与实现
  • 自动化调参工具:VOFA+可视化参数
  • java集合详细讲解
  • Java集合框架解析:从基础到底层源码
  • 如何使用GIT管理项目代码
  • 大二周周练翻译
  • IP地址代理公司:服务模式与行业应用探析
  • 龙虎榜——20250519
  • Java—— IO流 第一期
  • FART 自动化脱壳框架简介与脱壳点的选择
  • Effective C++阅读笔记(item 1-4)
  • C++(2)关键字+数据类型 +数据类型输入