数据结构之内核链表,栈,队列

news2024/9/30 22:45:54

今天主要学习了内核链表,顺序栈,链式栈,顺序队列,链式队列的相关内容。

一.内核链表

        内核链表和之前的单向,双向链表有所不同的是内核链表的结构是数据包含节点,特点如下:

    1.一种链表结构能够操作多种类型的数据对象 
    2.节点包含数据变成数据包含节点

相关图解如下:

如利用内核链表实现对学生信息的插入,并完成打印,代码示例如下:

定义的相关函数接口可查看内核链表的开源代码。

二. 栈(FILO:先进后出)

        栈和队列都是特殊的表状结构,和之前叙述的顺序表链式表一致,但特点在于顺序表链式表表可以在任意位置插入和删除,而栈和队列只允许在固定位置插入和删除。

        特点:FILO
            先进后出,后进先出 
            栈顶:允许入栈出栈的一端称为栈顶
            栈底:不允许入栈和出栈的一端称为栈底
            入栈(压栈):将数据元素放入栈顶
            出栈(弹栈):将数据元素从栈顶位置取出

        分类:

          空增栈
          空减栈
          满增栈
          满减栈

               

顺序栈的代码示例如下:

链式栈(内核链表)的相关代码如下:

三.队列

        队列大致和栈相同,唯一不同是队列为FIFO(先进先出,后进后出),使用内核链表完成队列的入队和出队操作的相关代码如下:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2087529.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

系统架构设计师——系统工程学

概述. 系统工程是一种跨学科的方法论,旨在通过系统方法组织管理技术来实现系统的规划、研究、设计、制造、试验和使用。它的核心在于从整体的角度出发,合理地开发、设计、实施和运用系统科学和技术,确保系统能够成功地实现其预定目的。以下是…

适用于车队管理和试验验证的数据记录仪-IPE853

IPE853是一款可扩展的数据记录仪,支持整车质量保证中的各项测量任务。它具有CAN/CAN FD、LIN、以太网等众多测量输入接口,并支持CCP/XCPonCAN、XCPonETH、J1939、OBD、WWH-OBD、KWPonCAN、UDS/ODX/PDX和CAN-send等多种协议,因此其可轻松访问汽…

vscode在html中的使用

目录 一、安装插件二、通过live Server 小型服务器运行项目三、其他常见设置 一、安装插件 ● Auto Rename Tag 自动修改标签对插件 ● Chinese Language Pack 汉化包 ● HTML CSS Support HTML CSS 支持 ● Intellij IDEA Keybindings IDEA快捷键支持 ● Live Server 实时加载…

解决线程中使用线程锁

问题:多线程操作同一个对象,利用锁保证数据操作的原子性 解决方案:使用线程锁 简要说明:线程锁本质上就是添加一个公共状态量,当线程拿到状态量后,则继续执行,否则就等待 扩展1:自…

【文献及模型、制图分享】大运河江苏段沿线典型传统村落空间形态特征与影响因素及其启示

文献介绍 大运河见证了中国数千年的繁荣与变迁,沿线传统村落是其历史文化的直接展示。对这些村落的空间形态进行研究,不仅能够深入了解传统村落形态特征,还为其保护和发展提供有力的支持。以大运河江苏段沿线的48个传统村落为研究对象&#…

C++入门基础知识40——【关于C++ 运算符——赋值运算符】

成长路上不孤单😊【14后,C爱好者,持续分享所学,如有需要欢迎收藏转发😊😊😊😊😊😊😊!!!!&#xff…

大数据-107 Flink 基本概述 适用场景 框架特点 核心组成 生态发展 处理模型 组件架构

点一下关注吧!!!非常感谢!!持续更新!!! 目前已经更新到了: Hadoop(已更完)HDFS(已更完)MapReduce(已更完&am…

CSS3中的字体详解

字体 网页字体的三个来源: 用户机器上安装的字体,放心使用。保存在第三方网站上的字体,例如Typekit和Google,可以link标签链接到你的页面上。保存在你自己Web服务器上的字体,可以用font-face规则随网页一起发送到浏览器。 字体相…

【文献及模型、制图分享】传统村多功能发展特征识别、类型划分与差异化引导——以安徽黟县44个传统村为例(多指标综合法及耦合协调模型

文献介绍 揭示多功能发展特征、划定多功能协同发展类型是传统村落传承保护与活化利用的现实需要,是传统村落保护发展研究的重要议题。以黟县44个中国传统村落为研究对象,采用多指标综合法及耦合协调模型,科学测度传统村落多功能发展水平及协…

【赵渝强老师】MongoDB的存储引擎

存储引擎(Storage Engine)是MongoDB的核心组件,它负责管理数据如何存储在硬盘(Disk)和内存(Memory)上。从MongoDB 3.2 版本开始,MongoDB支持多种类型的数据存储引擎。 视频讲解如下&…

“JavaScript里的多线程“WebWorker

"JavaScript里的多线程"WebWorker 引言 简要介绍主题: WebWorker 是一种在 Web 开发中用来解决 JavaScript 单线程限制的重要技术。通过 WebWorker,可以将一些复杂或耗时的任务放到后台线程中执行,从而避免阻塞主线程,…

Java 7.1 - 理论 算法 协议

什么是 CAP 理论? C:Consistency 一致性 A:Availability 可用性 P:Partition 分区容错性 对于理论计算机科学,CAP 定理指出,对于一个分布式系统而言,CAP 中的三个只能同时满足两个。 分区容…

从算法到硬件实现:《基于FPGA的数字信号处理》(可下载)

数字信号处理是现代电子系统中不可或缺的核心。FPGA是实现复杂DSP算法的理想平台。《基于FPGA的数字信号处理(第2版)》由资深工程师高亚军编著,是一本深入探讨FPGA在数字信号处理领域应用的专业书籍。 本书以Xilinx新一代28nm工艺芯片7系列FP…

设计模式 -- 组合模式(Composite Pattern)

1 问题引出 编写程序展示一个学校院系结构:需求是这样,要在一个页面中展示出学校的院系组成,一个学校有多个学院, 一个学院有多个系。如图: 2 基本介绍 组合模式(Composite Pattern)&#xff0c…

Musetalk-Stream: 未来数字人的智能语音交互革命“

实时交互流式数字人,实现音视频同步对话。基本可以达到商用效果 ernerf效果musetalk效果wav2lip效果 Features ⦁ 支持多种数字人模型: ernerf、musetalk、wav2lip ⦁ 支持声音克隆 ⦁ 支持数字人说话被打断 ⦁ 支持全身视频拼接 ⦁ 支持rtmp和webr…

C语言中的预处理器字符串化与拼接操作符:底层原理及实现细节

引言 在C语言中,预处理器是一个重要的工具,它在编译前对源代码进行处理,从而实现了诸如条件编译、宏定义等功能。本文将深入探讨两种预处理器操作符:# 和 ##,它们分别用于字符串化和拼接标识符。 字符串化操作符 # …

1、Java简介+DOS命令+java的编译运行(字节码/机器码、JRE/JVM/JDK的区别)+一个简单的Java程序

​ Java类型: JavaSE 标准版:以前称为J2SE,主要用来开发桌面应用程序或简单的服务器应用程序。JavaEE 企业版:建立在 Java SE 的基础上,包含了支持企业级应用程序开发和部署的标准和规范(如Servlet、Jsp、…

自建 git 服务器

所有老板(至少 99%)都一样,想花一分钱办两分钱的事,想招十块钱的人干二十块钱的事……我表示理解(A Pei ~~ 既想马儿跑得快,又想马儿不吃草) 在老板眼中,我恰好是那个性价比最高的人…

AI赚钱成功案例|像素级拆解一键生成提示词 文生图 图生视频

本文背景 之前弄了个诗词转画面大师,就是你给个句子,它就能给你画面提示词,接着用 AI 绘图软件能生成很棒的画面,再把图片弄成视频,最后能出个不错的作品。 最近看到那些漫剪大师的作品,配的歌好听&#xf…

设计模式结构型模式之适配器模式

结构型模式之适配器模式 一、概述和使用场景1、概述2、使用场景:3、主要分类 二、 代码示例1、类适配器模式2、接口适配器3、对象适配器 四、总结1、适配器模式2、适配器模式的优点3、适配器模式的缺点 一、概述和使用场景 1、概述 适配器模式是一种结构型设计模式…