自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 作业13-二叉树的建构与遍历

if ((paraQueuePtr->front + 1) % QUEUE_SIZE == paraQueuePtr->rear) {//表示队头的下一个位置是队尾。二叉树是一种重要的树状数据结构,它的每个节点最多有两个子节点,分别称为左子节点和右子节点。◦ 中序遍历:先递归遍历左子树,然后访问根节点,最后递归遍历右子树。◦ 先序遍历:先访问根节点,然后递归遍历左子树,最后递归遍历右子树。◦ 后序遍历:先递归遍历左子树,然后递归遍历右子树,最后访问根节点。//二叉树节点结构体定义。//创建二叉树节点函数。

2025-04-24 21:12:13 471

原创 作业12-循环队列

需要特殊的判断条件:由于队列是循环的,判断队列空和满不能简单地依据尾指针是否到达数组末尾或头指针是否为0,通常通过判断头指针和尾指针的关系来确定,如通过(rear + 1) % TOTAL_SPACE == front判断队列已满,通过front == rear判断队列空。

2025-04-21 21:37:25 544

原创 作业11-链队列

与顺序队列(用数组实现)不同,链队列使用链表来存储数据元素,这使得它在处理动态大小的队列时更加灵活,不需要预先分配固定大小的空间,能够根据实际需求动态地分配和释放内存。链队列是一种线性数据结构,它遵循先进先出(FIFO)的原则。新元素总是从队列的尾部( rear)插入,而元素的删除总是从队列的头部(front)进行。

2025-04-21 20:39:31 907

原创 作业10—汉诺塔

对于递归算法,递归调用栈的深度决定了额外的空间开销。每一次递归调用都需要在栈中保存函数的参数、局部变量等信息。空间复杂度为O(n)

2025-04-16 20:34:59 283

原创 作业九—递归累加

空间复杂度为O(n)

2025-04-16 20:18:15 232

原创 作业7 栈的应用-括号匹配

*bracketMatching函数用于检查给定字符串中的括号是否匹配。它初始化一个栈,并将一个特殊字符'#'压入栈底。如果是右括号(')', ']', '}'),则从栈中弹出一个字符并检查是否与当前右括号匹配,若不匹配则返回false。遍历完字符串后,检查栈顶是否为初始的'#',若不是则返回false,否则返回true。如果是左括号('(', '[', '{'),则将其压入栈中。#include <stdio.h>//布尔类型。//检查括号是否匹配。

2025-04-10 21:28:06 535

原创 作业6 栈

在代码中通过判断paraStackPtr->top < 0来确定栈是否为空。栈是一种特殊的线性表,它只能在表的一端进行插入和删除操作。

2025-04-10 21:17:34 264

原创 作业5 多项式加法

/p、q分别指向两个多项式链表的头节点。//p移动到第一个链表的下一个节点。//p指向的节点链表接到结果链表。//第一个链表已经处理完。//释放第二个链表的头节点内存。} else {//指数相等。//分别测试打印两个多项式链表。//在链表尾部添加元素。//打印单个节点函数。

2025-04-10 21:03:31 608

原创 作业4静态链表

因此,静态链表插入和删除操作相对复杂,需要通过修改游标来实现节点的链接和断开,但在一些特定场景下,如对空间有限制且数据操作较为规律时,有一定优势。//为节点数组和标记数组分配内存。

2025-04-08 00:27:42 633

原创 作业3双向链表

双向链表是链表的一种,它的每个节点除了包含数据域外,还包含两个指针域,一个指向前驱节点,一个指向后继节点。双向链表:每个节点有两个指针域,一个指向前驱节点,一个指向后继节点,可双向遍历。除了头节点的前驱指针和尾节点的后继指针为空外,其他节点都能通过两个指针与前后节点相连。单链表:每个节点只有一个指针域,指向后继节点,只能从前往后单向遍历。头节点的指针指向第一个数据节点,尾节点的指针指向空。单链表每个节点只需存储一个指针,双向链表每个节点要存储两个指针,因此双向链表占用的空间更大。

2025-04-07 20:55:35 500

原创 作业2 单链表

/在内存中分配一块大小为LNode结构体大小的空间,并将这块空间的起始地址赋值给指针q。//获得结构体空间大小。LinkList用来创建单链表节点*///节点初始化、地址打印、链表链接。//1.找到要插入的位置。//2.创建一个新的节点。//打印单链表节点内的数据地址。//删除元素,与上面类似。//在链表末尾插入元素。

2025-04-02 21:26:11 777

原创 作业1 顺序表

/表示定义了指向这个结构体的指针。#include <malloc.h>//内存分配相关函数。} //(等于0后将不再读取后面的数据)//同上,测试删除函数。

2025-03-29 12:11:09 407

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除