常用数据结构
文章平均质量分 61
数据结构的学习
逸兴云飞~
人生就是这样,要耐的住寂寞,才守得住繁华
展开
-
数据结构——树
/描述二分查找树的一个结构//数据域//左指针//右指针1}Node;5.2、定义一个二叉树//描述一颗二分查找树Node *root;//定义一个指向二分查找树根节点的指针}Tree;原创 2023-05-20 10:39:26 · 141 阅读 · 0 评论 -
数据结构——队列
队列一种先进先出(FIFO)的数据结构,是一种只能在一端进行插入在另一端进行删除操作的特殊线性表。原创 2023-05-16 23:36:56 · 380 阅读 · 0 评论 -
数据结构--栈的应用2括号匹配
假设表达式中允许出现两种括号:圆括号()和方括号[],其嵌套的顺序随意,即( [ ( ) ( ) ] )或者 [ ( [ ] [ ] ) ]等为正确的表达式,但是 ( [ ( ] ) 或者 [ ( [ ) ] 或者 ( [ ( ] ) )等为错误的表达式。原创 2023-05-15 10:47:20 · 125 阅读 · 0 评论 -
数据结构--栈的应用1:数据转换
注意:栈的的数据类型为字符类型,将十进制转化为对应的其他进制就是在这个十进制的数的基础上连续除以10取余,然后以此存放到栈中入栈,直到取余为0时,出栈打印出对应的值,即为对应的。将输入的十进制数转换为对应的2位8位16位进制的数。//链表栈,顺序栈的基本操作请参考之前的文章。原创 2023-05-15 09:37:35 · 170 阅读 · 0 评论 -
数据结构——栈
栈是一种基于先进后出(FILO)或者后进先出(LIFO)的数据结构,是一种只能在一端经行插入和删除操作的特殊线性表。它按照先进后出的原则存储数据,先进的数据被压入栈底,后进女的数据在栈顶,需要读数据的时候从栈顶开始弹出数据(最后一个数据被第一个读出来)。压栈(入栈):数据进入到栈的动作。弹栈(出栈):数据从栈中出去的动作。原创 2023-05-15 09:15:34 · 120 阅读 · 0 评论 -
数据结构——双向链表
双向链表也叫做双向表,是链表的一种,有多个结点组成,每隔结点都有一个数据域和两个指针域,数据域用来存数据,其中一个指针域用来指向后继结点,另一个指针域指向前驱结点。链表的头结点的数据域不存数据。指向前驱结点的指针域为NULL,指向后驱结点的指针域指向第一个真正存储数据的结点。原创 2023-04-15 01:52:08 · 234 阅读 · 0 评论 -
约瑟夫环-(数据结构)
传说有这样一个故事,在罗马占领乔塔帕特之后,39个犹太人与约瑟夫及他的朋友躲到一个洞当中,39个犹太人宁愿死也不愿意被敌人抓到,于是决定以自杀的方式,41个人排成一个圆圈,第一个人开始报数依次往后如果有人报到3这个人就必须自杀,然后有他的下一个人重新从1开始报数,直到所有人都自杀身亡为止。然而约瑟夫和他的朋友并不像遵从,于是约瑟夫要他的朋友先假装遵从,他将自己和朋友安排在第16和第31的位置,从而逃过了这场死亡游戏。原创 2023-01-11 22:12:41 · 150 阅读 · 0 评论 -
单项链表(数据结构)
前面学习顺序表的时候,线性表的数据储存结构的特点是逻辑关系上相邻的两个元素在物理位置上也是相邻的,虽然顺序表的查询很快,但是由于时间复杂度问题,增删的效率是比较低的,每一次的增删操作都伴随的大量的移动。线性表的链式存储结构(也称之为链表)的特点是逻辑关系上相邻的两个数据元素在物理位置上不一定是相邻的,换言之数据元素在存储器中的位置可以是任意的。原创 2023-01-08 20:59:48 · 299 阅读 · 0 评论 -
单项循环链表
循环链表,顾名思义链表整体要形成一个圆环状。在单向链表中,最后一个结点的指针是NULL,不指向任何结点,因为没有下一个元素了。要实现循环链表,我们只需要单项链表的最后一个结点指针指向头结点即可。原创 2023-01-10 02:02:48 · 149 阅读 · 0 评论 -
线性表(数据结构)
线性表是最基本最简单,也是最常用的一种数据结构。一个线性表是n个具有相同特性的数据元素的有限序列。如果把线性表用数学语言来定义,则可以表示为(a1,...ai-1,ai,ai+1,...an),ai-1领先于ai,ai领先于ai+1,称ai-1是ai的前驱元素,ai+1是ai的后继元素。原创 2022-12-23 15:53:13 · 425 阅读 · 0 评论