- 博客(132)
- 收藏
- 关注
原创 pygame小游戏:吃豆人
2.上下左右移动,吃到食物得分加1,红色(敌人)会追击你,碰到游戏就结束了。1.空格暂停继续,0在游戏失败后,开始新的游戏。3.挑战一下最高分吧!
2025-04-15 15:19:14
85
原创 第36次CCFCSP计算机软件能力认证总结
最终更新,这是正确的方法,on,利用了并查集跳过已经访问和计算过的元素,原代码bfs,对于每个状态我们重复遍历了已经访问的节点,如果我们使用并查集的合并功能,将当前i指向i+1,下一次我们通过find函数可以快速找到下一个没有访问过的点。未知,模拟能够通过样例,但是提交是0分,我的方法:暴力二分,过了80,复杂度是n**2logn。更新的代码仍然是错误方法:用队列存储每个次数的索引,即bfs,队列操作是扩展搜索,这个复杂度是n**2。5.估计是线段树之类的,不会,尝试暴力法,但是循环太多,直接放弃了。
2024-12-17 00:48:17
788
4
原创 吃豆人python 放松小游戏
1.空格暂停继续,0在游戏失败后,开始新的游戏2.上下左右移动,吃到食物得分加1,红色(敌人)会追击你,碰到游戏就结束了3.挑战一下最高分吧!
2024-07-06 21:33:19
1664
1
原创 贪吃蛇python,怎么拥有一个直接打开就放松玩的游戏
你需要不断地移动到食物的地点,吃掉它,你的长度会增加,也就是成绩在增加,同时,撞到墙和自己的概率会变大,难度一直上升,看看自己的记录怎么样吧!
2024-07-06 05:09:06
789
原创 整数拆分问题
/整数拆分问题:编写一个程序,找出一个正整数的所有可能拆分方式。例如,对于正整数 4,有以下拆分方式:1 + 1 + 1 + 1、1 + 1 + 2、1 + 3、2 + 2、4。
2024-06-06 15:03:38
397
原创 Dijkstra算法
/给定一个加权有向图,请写一个函数,返回从指定起始节点到目标节点的最短路径。可以使用Dijkstra算法或Bellman-Ford算法。
2024-06-06 14:38:19
269
原创 使用栈实现一个简单的计算器
else if (isdigit(expression[i]) || (expression[i] == '-' && (i == 0 || expression[i - 1] == '('))) { // 如果是数字或负号。ops.empty() && priority(ops.top()) >= priority(expression[i])) { // 当栈顶操作符优先级大于等于当前操作符时。else if (expression[i] == '(') { // 如果是左括号,将左括号压入操作符栈。
2024-06-06 14:29:15
1193
原创 判断一棵二叉树是否为完全二叉树
在具体实现时,你可以使用队列来辅助层次遍历,并记录是否遇到了非叶子节点。如果当前节点没有左子节点也没有右子节点,那么之后的所有节点都必须是叶子节点,否则该二叉树不是完全二叉树。// 如果之前出现过空节点,当前节点不应该存在子节点。// 不是完全二叉树。如果层次遍历完所有节点后没有违反上述条件,那么该二叉树是完全二叉树。如果当前节点没有左子节点但有右子节点,那么该二叉树不是完全二叉树。// 用于标记是否出现空节点。如果当前节点有左子节点,将左子节点加入遍历队列。
2024-06-06 14:22:53
758
原创 prim算法
/ 用于记录顶点是否已经包含在最小生成树中。key[0] = 0;// 将第一个顶点作为 MST 的根。// 第一个顶点没有父节点。// 存放构造的最小生成树。int key[V];#define V 5 // 图中顶点的数量。
2024-06-06 13:57:58
439
原创 扫雷类图设计
创建了一个扫雷游戏的界面,包括菜单栏、加载游戏记录按钮以及游戏记录窗口。初始化一个扫雷游戏的棋盘,包括放置雷、计算周围雷数等功能。播放 on0lb-r6h2s.wav 文件。播放 6586c-0ubev.wav 文件。播放 hbe6d-cgk6g.wav 文件。播放音频文件,并在播放完成后释放锁。播放音频文件,并在播放完成后释放锁。游戏的棋盘状态,表示方块上的内容。标记标记为雷的方块的二维布尔数组。表示游戏每一次操作揭开的格子数。标记已揭示方块的二维布尔数组。显示游戏记录的文本区域。保存可变整数值的属性。
2024-06-06 13:28:01
785
1
原创 矩阵前缀和:找到窗口的*最多数量
ans=max(ans,pre[i+m-1][j+m-1]-pre[i-1][j+m-1]-pre[i+m-1][j-1]+pre[i-1][j-1]);
2024-06-05 14:38:54
379
原创 java--汽车租赁系统最后一天完成主类和异常类
if ((username.equals("张三") && password.equals("sd4578hg"))||(username.equals("李四") && password.equals("1265dfsa") )||(username.equals("王五") && password.equals("378627as"))){System.out.println("请选择操作(1. 查看车辆信息,2. 添加车辆,3. 修改车辆信息,4. 删除车辆,5. 查看营业额,6. 退出):");
2024-05-09 19:06:06
422
1
原创 java--汽车租赁系统:第三天完成VIP用户类
System.out.println("卡车(品牌:" + truck.getBrand() + ",每日租金:" + truck.getRentalPrice() +System.out.println("公共汽车(品牌:" + bus.getBrand() + ",每日租金:" + bus.getRentalPrice() +System.out.println("轿车(品牌:" + car.getBrand() + ",每日租金:" + car.getRentalPrice() +
2024-05-08 22:17:35
403
原创 java汽车租赁系统:第二天完成管理员类
System.out.println("卡车(品牌:" + truck.getBrand() + ",每日租金:" + truck.getRentalPrice() +System.out.println("公共汽车(品牌:" + bus.getBrand() + ",每日租金:" + bus.getRentalPrice() +System.out.println("轿车(品牌:" + car.getBrand() + ",每日租金:" + car.getRentalPrice() +
2024-05-07 14:33:51
287
原创 java汽车租赁系统:第一天完成车辆类
return "轿车:品牌:"+getBrand()+",每日租金:"+getRentalPrice()+",载客量:"+passengerCount;return "卡车:品牌:"+getBrand()+",每日租金:"+getRentalPrice()+",载货量:"+cargoCapacity;return "公共汽车:品牌:"+getBrand()+",每日租金:"+getRentalPrice()+",座位数:"+seatCount;
2024-05-06 14:42:16
557
3
原创 C++--学生信息管理系统
cout<<"学生的姓名是:"<<getName()<<","<<"学生的性别是:"<<getGender()<<","<<"学生的学号是:"<<getSno()<<endl;cout<<"学生的班级是:"<<getClass()<<","<<"学生的年级是:"<<getGrade()<<endl;cout<<stu[i].getName()<<"的"<<s<<"成绩是";cout<<"学生"<<getName()<<"的成绩如下"<<endl;cout << "2. 删除学生信息" << endl;
2024-05-05 15:33:51
767
原创 java--一个简单的图书管理系统
Override@Overridebreak;case 1:break;case 2:break;case 3:} else {break;case 4:break;case 5:default:
2024-05-04 00:11:19
61
原创 java--多线程:编写一个 Java 程序,实现一个简单的多线程应用程序。其中,创建两个线程,一个线程打印奇数,另一个线程打印偶数,要求输出结果交替显示。
简单的多线程应用程序
2024-05-03 23:35:41
635
原创 java--异常处理示例:实现一个自定义异常类,命名为 NegativeNumberException,用于处理输入为负数的情况。要求在输入为负数时抛出此异常,并在程序中进行处理
System.out.println("捕获到异常: " + e.getMessage());throw new NegativeNumberException("输入的数是负数,不合法");System.out.println("输入的数是正数或零,输入有效: " + number);// 如果输入的数是负数,抛出 NegativeNumberException。// 调用父类 Exception 的构造函数。System.out.print("请输入一个整数: ");
2024-05-03 23:03:36
275
原创 java--图(邻接链表)
int val;int q;Node next;q = 0;i++) {k.q = t;s.next = k;} else {= null) {} else {return;return;while (s!= null) {prev = s;s = s.next;if(s!return;while (s!= null) {return s.q;s = s.next;return -1;while (s!
2024-05-02 20:46:54
111
1
原创 java--树
int val;Tree left;Tree right;left=null;right=null;int val;i<maxsize;i++){=null)
2024-05-02 18:03:30
47
原创 java--队列
int data[];int front;int rear;front=0;rear=0;q.push(1);q.push(2);q.push(3);q.pop();q.pop();q.pop();
2024-05-02 16:32:34
38
原创 java--栈
int data[];int t;t=0;t--;int top(){i<t;i++){s.push(1);s.push(2);s.push(3);s.push(4);s.pop();s.pop();s.pop();s.pop();
2024-05-02 15:55:03
33
原创 KMP算法-在文本串中查找模式串的起始位置
else if (j > 0) { // 字符失配,根据next跳过子串前面的一些字符。if (string[i] == patt[j]) { // 字符匹配,指针后移。if (j == patt.size()) { // 匹配成功。else { // 子串第一个字符就失配。int i = 0;int j = 0;return -1;
2024-04-22 12:51:23
384
原创 图算法:Ford-Fulkerson算法:来求解从源点到汇点的最大流问题
/ 如果能够到达汇点,则返回true。// 使用Ford-Fulkerson算法求解最大流。// 初始化邻接矩阵,这里直接使用示例图。#define V 6 // 图中的顶点数。// 将图复制到残余图。// 使用BFS寻找增广路径。// 使用邻接矩阵表示图。
2024-04-22 11:38:22
361
原创 图的着色:给定一个图,要求为图中的节点进行着色,使得相邻的节点颜色不同,并且最小化所需的颜色数目
/ 如果相邻节点已经被着色,则将其颜色加入已使用颜色集合。// 存储相邻节点已经被使用的颜色。// 寻找可用的最小颜色。// 为当前节点着色。// 从第一个节点开始遍历。// 返回所需的最小颜色数。// 存储每个节点的颜色。// 贪心算法着色函数。
2024-04-22 00:40:52
419
原创 判断二分图:涂两种颜色,需要每一层结点的颜色一样,相邻层的相反
/ 用于记录节点的颜色,初始值设为 -1,表示未染色。给定一个图,要求判断它是否是一个二分图,即图中的节点可以划分为两个不相交的集合,使得每条边连接的两个节点分属于不同的集合。// 如果邻居节点已经被染色,并且颜色与当前节点相同,则不是二分图。// 将起始节点染色为颜色 0。// 如果邻居节点未被染色,则染色并入队。// 遍历当前节点的所有邻居节点。// 如果所有节点都被染色且满足条件,则是二分图。// 遍历所有节点,处理非连通图的情况。// 判断图是否为二分图。// 定义图的数据结构。
2024-04-22 00:01:30
377
原创 /*数组中的第 K 个最大元素: 找到未排序整数数组中的第 k 个最大元素。例如,给定数组 [3,2,1,5,6,4] 和 k = 2,返回 5。*/
/ 从第 k+1 个元素开始,与堆顶比较,若大于堆顶,则弹出堆顶,插入当前元素。// 返回堆顶元素即为第 k 大的元素。// 将前 k 个元素插入小根堆。
2024-04-21 23:34:24
421
原创 动态规划16--不同的二叉搜索树:给定一个整数 n,求生成所有由 1 ... n 为节点所组成的二叉搜索树个数。(参考代码随想录的视频)
给定一个整数 n,求生成所有由 1 ... n 为节点所组成的二叉搜索树个数。// dp[i] 表示节点数为 i 时的二叉搜索树个数。// dp[j - 1] 表示左子树的个数,dp[i - j] 表示右子树的个数。// 计算节点数为 i 时的二叉搜索树个数。
2024-04-20 22:23:31
305
1
原创 二叉树的最近公共祖先:给定一个二叉树,找到该树中两个指定节点的最近公共祖先。
给定一个二叉树,找到该树中两个指定节点的最近公共祖先。// 包含 LONG_MIN 和 LONG_MAX。
2024-04-20 21:03:27
207
原创 二叉树的直径:给定一棵二叉树,你需要计算它的直径长度。二叉树的直径长度是任意两个结点路径长度中的最大值。
给定一棵二叉树,你需要计算它的直径长度。二叉树的直径长度是任意两个结点路径长度中的最大值。// 包含 LONG_MIN 和 LONG_MAX。
2024-04-20 18:34:24
364
原创 对称二叉树:给定一个二叉树,检查它是否是镜像对称的。
/ 递归检查左节点的左子树和右节点的右子树,以及左节点的右子树和右节点的左子树是否对称。// 如果左右节点有一个为空,或者它们的值不相等,则返回 false。// 调用 isSymmetric 函数检查左子树和右子树是否对称。// 包含 LONG_MIN 和 LONG_MAX。// 如果左右节点都为空,则返回 true。// 如果根节点为空,则返回 true。给定一个二叉树,检查它是否是镜像对称的。
2024-04-20 17:15:33
347
原创 深度优先搜索:被围绕的区域:给定一个二维的矩阵,包含 ‘X‘ 和 ‘O‘(字母 O);找到所有被 ‘X‘ 围绕的区域,并将这些区域里所有的 ‘O‘ 用 ‘X‘ 填充。
给定一个二维的矩阵,包含 'X' 和 'O'(字母 O);找到所有被 'X' 围绕的区域,并将这些区域里所有的 'O' 用 'X' 填充。//解决方法:标记所有与外界连通的‘O’,这些不符合被'X'包围的情况。
2024-04-20 16:21:06
392
空空如也
第36次CCF计算机软件能力认证的第二题:梦境巡查
2024-12-16
,(int x=a<b; x<c表达式的真值)和a<b&&b<c真值相同
2024-11-26
怎么一键复制代码csdn
2024-04-10
TA创建的收藏夹 TA关注的收藏夹
TA关注的人