首页 > 其他分享 >数据结构【1】

数据结构【1】

时间:2023-11-28 19:12:36浏览次数:27  
标签:存储 元素 索引 链式 数据结构 结构

数据结构【1】

1、数据结构是什么,有什么作用

​ 数据结构就是 存储数据时,将数据排列的关系。

​ 使用数据结构的目的是为了使数据的增删查改更快速便捷。

2、数据之间的关系:

​ 集合、线性、树形、图形(网状)。

​ 集合之间的数据基本没有什么关系。

​ 线性关系是数据间是一条线或几条线这样存储。

​ 树形结构是以一对多形式存储的结构。

​ 图形(网状)结构是多对多形式存储的结构。

3、数据结构的第一种分类

线性结构:如 线性表、栈、队列、数组、字符串、广义表等。

非线性结构:如 树、图等。

4、数据结构的第二种分类

​ 在内存(物理)层面分为两类:连续存储(叫法为 顺序结构)分散存储(叫法为 链式结构)

​ 扩展出两类:索引存储结构(基于顺序和链式)散列存储结构(基于顺序和链式)

5、简单介绍一下 索引存储 和 散列存储

​ 索引存储:存储下一页目录(索引)。在大数据量中实现快速查找。如 mysql 中的 B/B+树。

​ 散列存储:通过某种算法存元素时,发现后面元素与前面元素的位置冲突,则用链表链起来或者在之前元素后面接上。 散列表一般是数组加链表组成的,存元素时,可以使连续空间少用一些。链式哈希中链的越少越好,通过元素值映射到了偏移的位置,最快实现O(1)的查找。

标签:存储,元素,索引,链式,数据结构,结构
From: https://www.cnblogs.com/wangsiyaoa/p/17862725.html

相关文章

  • 【2024省选冲刺计划】数据结构相关-线段树进阶
    线段树进阶0x01李超线段树FZPJ4519[2021冬令营模拟]上古遗迹【题目背景】“沙……沙……沙……”独行者的脚步一次次被刻进沙漠中,干冷的风携沙尘在男子的四围穿过。“该死……这沙尘什么时候才能消停会儿……”男子止不住地咳嗽,随即停了下来,开始查看便携式投影设备上的信......
  • 【2024省选冲刺计划】数据结构相关-根号数据结构
    根号数据结构0x01普通分块[2018NOIP模拟]蒲公英在乡下的小路旁种着许多蒲公英,而我们的问题正是与这些蒲公英有关。为了简化起见,我们把所有的蒲公英看成一个长度为\(n\)的序列\((a_1,a_2,...,a_n)\),其中\(a_i\)为一个整数,表示第\(i\)棵蒲公英的种类编号。而每次询问......
  • 数据结构之优先队列(java)
    一:概述队列的特点是:先进先出(FIFO).入队列,将元素置于队尾;出队列,队头元素最先被移出:优先队列不遵循先入先出的原则,而是分两种情况。最大优先队列,无论入队顺序如何,都是当前最大的元素优先出队最小优先队列,无论入队顺序如何,都是当前最小的元素优先出队。例如有一个最大优先队列,其中的......
  • 数据结构之二叉堆(Java)
    一:概述二叉堆:二叉堆本质上是一种完全二叉树,它分为两个类型。最大堆最小堆二:最大堆与最小堆的具体说明<1>最大堆最大堆的任何一个父节点的值,值大于或等同于它左、右孩子节点的值。例子如下图所示:<2>最小堆最小堆的任何一个父节点的值,都小于或等于它的左、右孩子节点的值。例子如下图......
  • 西北电专电院_数据结构上机报告记录_第三次上机报告
    内容比较简单,和其他院的上机比起来说是这样的实现二叉树的基本操作,二叉树使用链式结构建立,基本操作基本用递归实现 1.问题描述二叉树的基本操作;(1)创建二叉树,需注意此处是按照先序法输入(2)通过先序遍历、中序遍历、后序遍历分别输出二叉树(3)求取二叉树的结点总数、树的深度......
  • 【数据结构】lxl 的 DS 修炼
    线段树&平衡树用线段树/平衡树维护的序列问题可以分为两类:1.静态型:维护一个类似于\(\sum_{l,r}....\)的值,或者是多次询问区间或全局的一些特征值。2.动态型:支持动态修改和动态询问区间信息的类型。对于静态型,我们通常首先思考怎样求单个区间的答案值,同理,动态型通常先考虑......
  • C语言数据结构_查找并删除单链表中最大值结点并返回值
    代码实现1#include<stdio.h>2#include<stdlib.h>34typedefstructNode//定义一个结构体5{6floatdata;7structNode*next;8}Node;910Node*Chuangzao_LinkedList()//创建一个链表11{12Node*head=NULL;//......
  • 前端项目实战叁佰伍拾陆react-admin和material ui-处理形成树状数据结构2
    dataProviders.getStyleTree('t_prod_category','t_prod_style').then((res:any)=>{console.log(res,"resssssssss")letarr:any=[]letarr1:any=[{key:0,title:"品类管理",......
  • 前端项目实战叁佰伍拾伍react-admin和material ui-处理形成树状数据结构1
    if(data!==undefined){lettemp:ITreeData[]=[{key:'0',title:'工厂管理',children:newArray<ITreeData>()}];//向从数据库查询到的数据中添加Tree结构所需要的字段,key使用id,title使用name;data.forEach(it=>{......
  • 数据结构之二叉树的遍历3(java)
    一:概述绝大多数的可以用递归解决问题,也可以使用另一种数据结构来解决,这种数据结构就是栈。因为递归和栈都有回溯的特性。二:具体说明如何借助栈来实现二叉树的遍历,下面以二叉树的前序遍历为例,来阐述具体过程。<1>首先遍历二叉树的根节点1,放入栈中。<2>遍历根节点1的左孩子节点2,放入......