首页 > 其他分享 >数据结构概念篇

数据结构概念篇

时间:2023-11-18 19:11:06浏览次数:24  
标签:heap 插入 特性 概念 二叉树 哈希 数据结构 数组

数组

特性

  1. 连续,顺序
  2. 查找o1

队列

特性

  1. 不连续,随机
  2. 插入,删除o1

栈 stack

特性

  1. ​ 先进后出, push pop

​ 应用

  1. undo/redo
  2. 上一页,下一页
  3. 浏览器访问
  4. 日志panic

使用数组和链表分别实现栈

队queue

特性

  1. 先进先出 enqueue dequeue

应用

  1. 抢票
  2. 打客服

使用数组和链表分别实现队

集合和映射 set map

特性

  1. 不能重复
  2. 找出共同的组件

特性

  1. 不包含回路

名词

  1. node 节点
  2. root 根
  3. left 叶子

访问方法

  1. 层序
  2. 深序:先序,后序,中序

二叉树

分类

  1. 完全二叉树
  2. 满二叉树
  3. 搜索二叉树(左边一定小于右边)
  4. 红黑树(降低层数)

堆 heap

含义: 特别完全二叉树

分类

  1. 小顶堆 min heap
  2. 大顶堆 max heap

用处

  1. 急救排队(分级)max heap

新增和删除

  1. 遵循完全二叉树原理 从左到右
  2. 按定义移动插入
  3. 按定义插入

Hash 哈希

意义

​ 哈希表,杂错函数 mod, 哈希冲突(封闭,开放)

标签:heap,插入,特性,概念,二叉树,哈希,数据结构,数组
From: https://www.cnblogs.com/gongxianjin/p/17840955.html

相关文章

  • rust程序设计(4)关于 trait | impl 相关的概念和疑问
    trait是什么?Rust中的trait是一种定义可被多种类型实现的共享行为的方式。它类似于Java或C#中的接口。通过trait,你可以定义一组方法签名(有时包括默认实现),不同的类型可以实现这些方法。这有助于抽象通用功能并确保不同类型间一定程度的一致性。当一个类型实现了一个trait,它承诺提......
  • 计算机图形:图元、片元、光栅化等基本概念
    几种“点”的概念顶点(vertex):图元(如线段、三角形、圆等几何图形)由顶点+边组成,由用户及其建立的模型确定.图元(primitive):描述对象的几何要素的输出图元,称为几何图元,简称图元.如点、直线段、圆、二次曲线、曲面等.片元(fragment):光栅化过程的产物,光栅化将一个图元转变成二维图......
  • 【Node.js】 - 概念 fs path模块 压缩HTML代码
    一、概念Node.js是一个跨平台javaScript运行环境,使开发者可以搭建服务器端的JavaScript应用程序作用:1.编写数据接口,提供网页资源浏览功能等等2.前端工程化二、什么是前端工程化开发项目直到上线,过程中集成的所有工具和技术Node.js是前端工程化的基础(因为Node.js可以主动读取前端代......
  • clickhouse数据结构和常用数据操作
    背景,大数据中查询用mysql时间太长,使用clickhouse速度快,数据写入mysql后同步到clickhouse中测试1千万数据模糊搜索 mysql需要30-40秒 clickhouse约 100ms 一数据结构和存储引擎1查看clickhouse所有数据类型select*fromsystem.data_type_families;2常用数据......
  • 48.面向对象概念
    Python面向对象的概念面向过程编程面向过程编程(ProceduralProgramming)是一种基于过程或函数的编程范式。它将程序视为一系列的顺序执行的过程或函数,每个过程或函数完成特定的任务,通过调用其他过程或函数来协同工作。在面向过程编程中,数据和函数(过程)是分离的,函数可以直接访问......
  • 有序数据结构的交与并
    需要注意:1:求并集和交集前,需要将两个数组先进行排序(int或者vector都需要),否则结果有误2:需要定义vector的size,否则可能无法得到结果 vector的并#include<bits/stdc++.h>usingnamespacestd;intmain(){ inta[4]={1,2,3,4};//已经有序,若无序,需要排序! intb[......
  • 什么是数据结构里的 Merkle 树
    Merkle树,也被称为"hashtree",是一种二叉树的数据结构。这种树的每个节点都是基于其子节点的一种特殊形式的hash。具体来说,叶节点的hash是由存储在那里的数据块(例如文件或文件的部分)生成的,而非叶节点的hash是由其子节点的hash生成的。如果Merkle树只有一个节点(也就是根......
  • Istio从入门到精通——Istio 概念介绍
    Istio概念介绍一、流量管理https://istio.io/latest/docs/concepts/traffic-management/ Istio’strafficroutingrulesletyoueasilycontroltheflowoftrafficandAPIcallsbetweenservices.Istiosimplifiesconfigurationofservice-levelpropertieslike......
  • 多表查询(跨表查询) 子查询 链表查询 正反向查询概念 聚合查询 分组查询 F查询和Q查询
    昨日内容回顾模板之变量所有的数据类型都可以在模板中使用render(request,'index.html',context={''})render(request,'index.html',context=locals())"""在模板中使用变量的时候,用的是字典的key值,key值value值一般保持一致"""模板之过滤器类似于函数,函数才可以传递参......
  • 数据结构C语言之线性表
    发现更多计算机知识,欢迎访问Cr不是铬的个人网站1.1线性表的定义线性表是具有相同特性的数据元素的一个有限序列对应的逻辑结构图形:从线性表的定义中可以看出它的特性:(1)有穷性:一个线性表中的元素个数是有限的(2)一致性:一个线性表中所有元素的性质相同,即数据类型相同(3)序列性:各......