- 博客(148)
- 收藏
- 关注
原创 7-4 迷宫-广度策略
7-4 迷宫-广度策略分数 10全屏浏览切换布局作者 张瑞霞单位 桂林电子科技大学一个陷入迷宫的老鼠如何找到出口的问题。老鼠希望系统性地尝试所有的路径之后走出迷宫。如果它到达一个死胡同,将原路返回到上一个位置,尝试新的路径。在每个位置上老鼠可以向八个方向运动,顺序是从正东开始按照顺时针进行。无论离出口多远,它总是按照这样的顺序尝试,当到达一个死胡同之后,老鼠将进行“回溯”。迷宫只有一个入口,一个出口,设计程序要求输出迷宫的一条通路。迷宫采用二维存储结构表示,1表示障碍,0表示通路;
2025-01-13 12:00:00
696
原创 7-2 N 皇后问题
7-2 N 皇后问题分数 30全屏浏览切换布局作者 usx程序设计类课程组单位 绍兴文理学院要求在nn格的棋盘上放置彼此不会相互攻击的n个皇后。按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。
2025-01-12 12:00:00
422
原创 7-2 第k小元素
分数 25 作者 程银波 单位 河北农业大学给定一个大小为n(1≤n≤1000000)且无序的整型数组,数组中可能存在相同元素,请找出该数组第k(1≤k≤n)小的元素,注意这里的第k小元素指的是按从小到大排序后的第k个位置上的元素。
2024-12-17 12:00:00
323
原创 7-1 古老的汉诺塔
汉诺塔问题是一个经典的递归问题,其目标是将若干个大小不同的圆盘从一根柱子通过另一根柱子移动到目标柱子,且每次只能移动一个圆盘,并且大圆盘不能放在小圆盘上面。本文通过递归算法实现了该问题的解决。具体步骤为:首先将 n−1个圆盘从源柱移至辅助柱,接着将最大的圆盘从源柱移至目标柱,最后将剩余的 n−1个圆盘从辅助柱移至目标柱。每次递归调用中,问题被分解成更小的子问题,直到递归到只有一个圆盘时直接进行移动。该递归实现通过记录每一步的移动操作,并通过全局变量 num 计算总的移动次数。
2024-12-16 12:00:00
351
原创 1.7 好玩的约瑟夫环
作者 李卫明单位 杭州电子科技大学1.7 好玩的约瑟夫环:有M个人,编号分别为1到M,玩约瑟夫环游戏,最初时按编号顺序排成队列;每遍游戏开始时,有一个正整数报数密码N,队列中人依次围坐成一圈,从队首的人开始报数,报到N的人出列,然后再从出列的下一人开始重新报数,报到N的人出列;重复这一过程,直至所有人出列,完成一遍游戏,所有出列的人形成新队列;游戏可能玩很多遍,每遍有新报数密码。求若干遍游戏完成后队列次序。
2024-06-24 19:38:57
466
原创 1.8 无符号大数加、减运算
作者 李卫明单位 杭州电子科技大学1.8 无符号大数加、减运算。程序设计中经常遇到无符号大数加、减运算问题,请在样例程序Ex1.4基础上实现无符号大数减运算。题目要求输入两个无符号大数,保证一个大数不小于第二个大数,输出它们的和、差。
2024-06-24 14:15:10
458
原创 升级版约瑟夫环
分数 5作者 焦晓军单位 重庆科技大学又见约瑟夫环:有M个人围坐成一圈, 编号依次从1开始递增直到M,现从编号为1的人开始报数,报到N的人出列,然后再从下一人开始重新报数,报到N的人出列;重复这一过程,直至所有人出列。所有出列的人再次按出列顺序围坐成一圈,并从第1人开始报数,这次为报到K的人出队列,然后再从下一人开始重新报数,报到K的人出列;重复这一过程,直至所有人出列。求最后出列次序。题目输入包括M、N、K三个正整数;N、K可能为1。
2024-06-21 20:00:00
417
原创 约瑟夫环的奥秘
分数 5作者 李卫明单位 杭州电子科技大学1.5 约瑟夫环是个经典的问题。有M个人围坐成一圈,编号依次从1开始递增,现从编号为1的人开始报数,报到N的人出列,然后再从下一人开始重新报数,报到N的人出列;重复这一过程,直至所有人出列。求出列次序。本题要求用循环单链表实现。
2024-06-21 12:00:00
215
原创 单链表的拆分(不创建新的链表)
分数 5作者 李卫明单位 杭州电子科技大学1.4 编写程序,输入若干正整数,按从小到大次序建立1个带头结点单链表,设计一个实现单链表分离算法的Split函数,将原单链表中值为偶数的结点分离出来形成一个新单链表,新单链表中头结点重新申请,其余结点来自原链表,分离后,原链表中只剩非偶数值所在结点,最后显示2个单链表,在程序退出前销毁单链表。要求Split算法时间复杂性达到O(n),程序不可存在内存泄漏。
2024-06-20 20:00:00
472
原创 单链表的反转
分数 5作者 李卫明单位 杭州电子科技大学1.3 在第1题( 编写程序,建立2个带头结点单链表,输入若干整数将正整数插入第1个单链表,将负整数插入第2个单链表,插入前和插入后单链表保持递增或相等次序,显示2个单链表,最后销毁。程序不可存在内存泄漏。)建立2个单链表基础上,设计和实现就地逆置单链表函数,即利用原单链表结点建立元素次序相反的单链表。编写程序,建立2个单链表,就地逆置这2个单链表,显示逆置前后的各单链表。注意不可存在内存泄漏。
2024-06-20 12:00:00
309
原创 单链表的合并
分数 5作者 李卫明单位 杭州电子科技大学1.2 编写程序,在第1题(第1题:编写程序,建立2个带头结点单链表,输入若干整数将正整数插入第1个单链表,将负整数插入第2个单链表,插入前和插入后单链表保持递增或相等次序,显示2个单链表,最后销毁。程序不可存在内存泄漏。)基础上合并2个单链表,合并前后单链表保持递增或相等次序,显示合并前后单链表。注意不可存在内存泄漏。。
2024-06-19 20:00:00
258
原创 拆分两个单链表
分数 5作者 李卫明单位 杭州电子科技大学1.4 编写程序,输入若干正整数,按从小到大次序建立1个带头结点单链表,设计一个实现单链表分离算法的Split函数,将原单链表中值为偶数的结点分离出来形成一个新单链表,新单链表中头结点重新申请,其余结点来自原链表,分离后,原链表中只剩非偶数值所在结点,最后显示2个单链表,在程序退出前销毁单链表。要求Split算法时间复杂性达到O(n),程序不可存在内存泄漏。
2024-06-19 12:00:00
256
原创 单链表的插入及销毁
分数 5作者 李卫明单位 杭州电子科技大学1.1编写程序,建立2个带头结点单链表,输入若干整数将正整数插入第1个单链表,将负整数插入第2个单链表,插入前和插入后单链表保持递增或相等次序,显示2个单链表,最后销毁。程序不可存在内存泄漏。
2024-06-19 12:00:00
214
原创 合并两个单链表
分数 5作者 李卫明单位 杭州电子科技大学1.2 编写程序,在第1题(第1题:编写程序,建立2个带头结点单链表,输入若干整数将正整数插入第1个单链表,将负整数插入第2个单链表,插入前和插入后单链表保持递增或相等次序,显示2个单链表,最后销毁。程序不可存在内存泄漏。)基础上合并2个单链表,合并前后单链表保持递增或相等次序,显示合并前后单链表。注意不可存在内存泄漏。。
2024-06-18 12:15:00
455
原创 单链表的创建及排序
分数 5作者 李卫明单位 杭州电子科技大学1.1编写程序,建立2个带头结点单链表,输入若干整数将正整数插入第1个单链表,将负整数插入第2个单链表,插入前和插入后单链表保持递增或相等次序,显示2个单链表,最后销毁。程序不可存在内存泄漏。
2024-06-18 12:00:00
288
原创 7-1 后序和中序构造二叉树
分数 5作者 唐艳琴单位 中国人民解放军陆军工程大学本题目要求用后序序列和中序序列构造一棵二叉树(树中结点个数不超过10个),并输出其先序序列。
2024-06-13 12:00:00
450
转载 6-7 求二叉树叶子结点的个数(递归法)
分数 10作者 曹记东单位 陕西理工大学在二叉树T中,其叶子结点个数=左子树中叶子结点的个数+右子树中叶子结点的个数。利用递归方法求二叉树T的叶子结点个数。1)如果T=NULL,则是空树,叶子结点个数为0,返回值为0;2)如果T->lchild=NULL,且T->rchild=NULL,则是叶子结点,叶子结点个数为1,返回值为1;3)否则,利用递归方法求其左右子树中的叶子结点个数;并输出二叉树T的叶子结点个数。裁判测试程序样例:输入样例1:在这里给出一组输入。例如:输出样例1
2024-05-29 12:00:00
2332
转载 6-6 二叉树中度为1的结点数*
分数 10作者 李祥单位 湖北经济学院说明:data 为数据域。lch 和 rch 为指示左、右孩子的指针域。请编写函数,统计二叉树中度为 1 的结点个数。
2024-05-28 12:15:00
493
原创 6-4 先序输出度为2的结点
T是二叉树树根指针,PreorderPrintNodes按照先序遍历的顺序输出给定二叉树T中度为2的结点,格式为一个空格跟着一个字符。
2024-05-28 12:00:00
528
原创 6-1 二叉树的三种遍历(先序、中序和后序)
T是二叉树树根指针,Preorder、Inorder和Postorder分别输出给定二叉树的先序、中序和后序遍历序列,格式为一个空格跟着一个字符。
2024-05-20 17:13:48
1167
原创 6-1 递归求阶乘和
函数fact应返回n的阶乘,建议用递归实现。函数factsum应返回 1!+2!+...+n!的值。题目保证输入输出在双精度范围内。
2024-05-10 13:15:00
444
原创 6-2 双端队列
其中Deque/* 存储元素的数组 *//* 队列的头、尾指针 *//* 队列最大容量 */Push和Inject应该在正常执行完操作后返回true,或者在出现非正常情况时返回false。当Front和Rear相等时队列为空,Pop和Eject必须返回由裁判程序定义的ERROR。
2024-05-09 19:04:03
297
原创 Remove the specified nodes in the linked list with dummy header
There are two lines of input. The first line is a series of positive integers, and entering -1 indicates the end of the input. The second line contains one integer, which represents the number that needs to be deleted from the linked list.(输入有两行。
2024-04-21 18:08:11
574
原创 Delete the specified node in the linked list with dummy header
There are two lines of input. The first line is a series of positive integers, and entering -1 indicates the end of the input. The second line contains one integer, which represents the number that needs to be deleted from the linked list.(输入有两行。
2024-04-21 16:01:16
1111
原创 Insert a Node After a Specified Element
Output the data field of each node in the singly linked list. After each number, output a space.(每个整数后输出1个空格)You are required to implement a function with the prototype(函数原型) void insert(List L, int val, int key)
2024-04-21 15:49:49
462
原创 Insert a Node Before a Specified Element
Output the data field of each node in the singly linked list. After each number, output a space.(每个整数后输出1个空格)You are required to implement a function with the prototype(函数原型) void insert(List L, int val, int key)
2024-04-21 15:10:43
643
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人