首页 > 其他分享 >线性结构 | 数据结构

线性结构 | 数据结构

时间:2022-09-18 18:11:43浏览次数:73  
标签:队列 链表 内存 数组 线性 数据结构 结构

线性数据结构

队列
  • 什么是队列?
    先进先出,先来的先购买
    可以基于数组实现:有界队列,队列的大小有限,满了就会拒绝请求
    可以基于链表来实现:无界队列,可能导出过多的请求排队等待
    
  • 什么是栈?
    一种叠盘子的结构,不能从中间塞入,只能先从上面取盘子,操作受限的先进后出的结构。
    

    使用场景

    数组或者链表都可以完全替代栈,但是暴露太多操作接口,相对不可控,容易出错,
    如果涉及一端插入与删除,先进后出的情况就可以使用栈这种数据结构
    
  • 数组、链表来实现栈
    数组实现的是顺序栈,链表实现的是链式栈
    
链表
  • 什么是链表?
    不需要一块连续的内存空间,通过指针将零散的内存块串联起来的数据结构,有效避免申请大内存
    导致创建失败的问题。
    节点存储数据以及下一个节点的地址,适合插入与删除操作
    
数组
  • 什么是数组?
    一组连续的内存空间,存储相同数据类型的数据
    支持随机访问,根据下标访问元素的时间复杂度为O(1)
    为了保证内存数据的连续性,数组的插入、删除操作会比较低效
    

标签:队列,链表,内存,数组,线性,数据结构,结构
From: https://www.cnblogs.com/miaokela/p/16705380.html

相关文章

  • 循环结构
    循环结构while循环do...while循环for循环在Java5中引入了一种主要用于数组的增强型for循环。while循环while是最基本的循环,它的结构为:while(布尔表......
  • 选择结构
    选择结构if单选择结构我们很多时候需要去判断一个东西是否可行,然后我们才去执行,这样一个过程在程序中用if语句来表示语法:if(布尔表达式){//如果布尔表达式为true......
  • 数据结构一: golang 单向队列
    队列是什么,如何理解队列?队列一般称queue,是一个有序列表队列一般的原则为:先进先出【谁先来,谁先走】队列一般的场景可以想象:银行取现排队,移动营业厅排队,买咖啡排队等例......
  • 实例-rust-线性代数运算
    Cargo.toml[package]name="rust-example4"version="0.1.0"edition="2021"#Seemorekeysandtheirdefinitionsathttps://doc.rust-lang.org/cargo/refere......
  • mysql根据旧表创建新表_MySQL复制旧表结构创建新表
    1、复制表结构及数据到新表CREATETABLE新表SELECT*FROM旧表这种方法会将oldtable中所有的内容都拷贝过来,当然我们可以用deletefromnewtable;来删除。不过这种方法的......
  • C语言结构体初始化例子
    #include<stdio.h>main(){structstudent{charno[6];charname[8];intscore;};structstudentab[10]={{......
  • 测试用例结构
    功能测试用例标准结构(至少包括) 自动化测试用例结构 ......
  • uni-app目录结构说明
    一般目录结构如下:/.hbuilderx    (系统目录)/.vite  (系统目录) /node_modules (系统目录,存储平台插件)/pages (系统目录,存储页面文件,比如vue、nvue)/uni......
  • 数据结构实验(二)递归函数练习
    6-1递归法求Fibonacci数列第n项的值这道题就是写一个简单的递归函数即可intfun(intn){if(n==1||n==2)return1;returnfun(n-1)+fun(n-2);}......
  • 05-初始化项目结构
    无人问津也好,技不如人也罢,你都要试着静下来,去做自己该做的事。添加父管理项目springboot2.6.3+spring-cloud2021.0.1+springcloudalibaba2021.1在最顶层右击......