- 博客(22)
- 收藏
- 关注
原创 查找最小值
bool search(BSTnode* root, int data)//bool类型的函数返回的只是false和true。printf("请输入要查找的数字");
2025-05-18 23:18:52
439
原创 环形循环队列
bool dequeue(queue* q, int* value)//出列操作。bool enqueue(queue* q, int value)//入列操作。printf("队头元素: %d\n", value);printf("出队元素: %d\n", value);printf("队头位置:%的,队尾位置:%d\n\n");printf("出队元素: %d\n", value);printf("出队元素: %d\n", value);printf("队列为空\n");// 继续入队(测试环形特性)
2025-05-11 23:54:23
642
原创 检验括号的合法性
printf("错误:括号不匹配 '%c' 和 '%c' 在第 %d 行\n", top, ch, line);printf("错误:多余的右括号‘%c’出现在第%d行\n", ch, line);printf("错误:缺少右括号‘%c,未闭合的括号出现在前面代码中\n", peek(&stack));//多行注释如:/*hahha*/else if (ch == '\'')//开始字符如:'a'printf("正在检查文件:%s\n", argv[1]);printf("括号存在不匹配问题\n");
2025-05-11 21:24:42
1054
原创 用链表实现栈
#include<stdio.h>#include<string.h>#include<stdlib.h>typedef struct node{ int data; struct node* link;}node;node* top = NULL;void push(int x){ node* temp = (node*)malloc(sizeof(node)); temp->data = x; temp->link = top; top =
2025-05-04 23:19:00
200
原创 用数组实现栈
/ 将数组重命名为stack以增强可读性。int get_top() { // 函数名改为get_top,避免与变量名冲突。// 使用正确的数组名stack。return -1;
2025-05-04 22:43:39
181
原创 双向链表的头插法和尾插法以及反向打印
int data;return;return;= NULL)= NULL)return;= NULL)= NULL)int main()print();reprint();print();reprint();print();reprint();print();
2025-05-03 23:14:41
345
原创 双向链表的实现
int data;return;= NULL)return;= NULL)= NULL)int main()print();reprint();print();reprint();print();reprint();print();reprint();return 0;
2025-05-03 23:04:16
223
原创 关于递归的特征
将原问题拆解为更小、结构相同的子问题。例如,计算阶乘 n!必须存在一个或多个简单场景可直接求解,防止无限递归。例如,阶乘的终止条件为 0!当其符合条件时,栈顶无需运行下面的代码而是直接弹出,并且,从栈顶下一个元素才开始运行下面的代码。可以看出,在递归溯回阶段时p是直接指向倒数第二个元素的。递归调用必须逐步逼近终止条件,否则会导致栈溢出。递归函数在定义中直接或间接调用自身。
2025-05-03 22:25:27
220
原创 用迭代的方式去反转链表
int data;}node;return;= NULL;i++)= NULL)head = p;return;int main()print();print();return 0;
2025-05-03 21:54:57
419
原创 以递归方式逆序打印链表
int data;}node;return;= NULL;i++)= NULL)return;int main()print();return 0;
2025-05-03 11:39:09
479
原创 以迭代方式实现链表反转(1)
temp1是需要存储插入数字的指针,所以需要长期存在,因此需要分配内存。而反观temp2和temp,他们都是用来确定位置的指针,没必要进行内存的分配。在reverse做完最后一个循环的时候,prev指向最后一个数字,即反转后的头指针。
2025-05-03 10:52:19
309
原创 以迭代方式实现的反转链表
int data;}node;= NULL)return;=NULL;i++)return;= NULL)int main()print();reverse();print();return 0;
2025-05-02 23:55:02
414
原创 是否为字母异位体
printf("您输入的并非小写字母");printf("您输入的并非小写字母");printf("并非字母异位体");printf("并非字母异位体\n");printf("内存分配失败");printf("是字母异位体");printf("请输入s的值");printf("请输入t的值");
2025-04-23 12:57:36
347
原创 找相同的第一个字母
printf("存在错误,您的第 % d 位不符合要求", n);printf("存在错误,您的第 % d 位不符合要求", n);printf_s("相同的首项编号为%d", i);printf("请输入haystack中的字母,必须小写");printf("请输入needle中的字母,必须小写");printf_s("内存分配失败\n");printf_s("没有相同值");
2025-04-21 21:55:09
263
原创 检验字符串是否一致
printf("存在错误,您的第 %d 位不符合要求\n", n);printf("存在错误,您的第 %d 位不符合要求\n", i);printf("多余的字母为 %c\n", i + 'a');printf("没有多余的字母\n");
2025-04-21 21:00:32
252
原创 一个交替显示字母的程序
printf("请输入word1的数值,大小在1到%d之间", length);printf("请输入word2的值,大小在1到%d之间", length);printf("合并后的字符为:%s\n", merged);printf("错误");printf("错误");
2025-04-19 18:50:07
271
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅