
数据结构
阴天快乐、、
这个作者很懒,什么都没留下…
展开
-
数据结构实验——串的加密
一、实验题目一个文本串可用事先给定的字母映射表进行加密。例如,设字母映射表为:abcdefghijklmnopqrstuvwxyzngzqtcobmuhelkpdawxfyivrsj则字符串“abc”被加密为“ngz”。设计一个程序exp4-4.cpp将输入的文本串进行加密后输出,然后进行解密并输出。二、实验目的灵活运用串这种数据结构解决一些综合应用问题。三、实验步骤基本设计思路:设计两个串,分别...原创 2017-05-26 16:42:00 · 5185 阅读 · 0 评论 -
YTU OJ 2202: 合并链表(线性表) 数据结构练习
Description(线性表)假设有两个按元素值递增次序排列的线性表,均以单链表形式存储。请编写算法将这两个单链表归并为一个按元素值递减次序排列的单链表,并要求利用原来两个单链表的结点存放归并后的单链表。Input输入长度n:5输入数据:1 2 5 6 8输入长度m:5输入数据:3 4 7 9 10Output10 9 8 7 6 5 4 3 2 1Sample Input47 9 10 11...原创 2018-04-13 21:27:10 · 662 阅读 · 0 评论 -
YTU OJ 2203: 最小节点(线性表) 数据结构练习
Description(线性表)设有一个由正整数组成的无序(向后)单链表,编写完成下列功能的算法:找出最小值结点,且打印该数值。Input输入长度:6输入数据:3 2 1 4 6 8Output1Sample Input611 14 5 6 8 9Sample Output5【AC代码】:#include <malloc.h>#include <stdio.h>typ...原创 2018-04-13 21:52:50 · 801 阅读 · 0 评论 -
数据结构——求解迷宫问题(栈)
问题描述 给定一个MXN的迷宫图,求一条从指定入口到出口的路径。假设迷宫图如图所示(M=8,N=8)。对于图中每个方块,空白表示通道,阴影表示墙。所求路径必须是简单路径,即在求得的路径上不能重复出现同一通道块(蓝色为入口,红色为出口)。数据组织 为了表示迷宫,设置一个数组mg,其中每个元素表示一个方块的状态,为0时表示对应方块是通道,为1时表示对应方块是墙,不可走。为了算法...原创 2018-07-22 15:05:41 · 43379 阅读 · 13 评论 -
深度优先搜索DFS练习
例1:Description:现给定一个含有n个元素的数组A,要求:从这n个数中选择一些数,这些数的和恰好为kInput:多组测试数据。第一行为n(1<=n<=20) 第二行为n个整数,每个数的范围为(-10^8≤A[i]≤10^8) 第三行为整数k(-10^8≤k≤10^8).Output:如果能够达到目的,输出”Of course,I can!”; 否则输出...原创 2018-08-26 21:16:03 · 353 阅读 · 0 评论 -
Java数据结构——栈
Java Stack 类栈是Vector的一个子类,它实现了一个标准的后进先出的栈。堆栈只定义了默认构造函数,用来创建一个空栈。 堆栈除了包括由Vector定义的所有方法,也定义了自己的一些方法。除了由Vector定义的所有方法,自己也定义了一些方法:序号 方法描述 1 boolean empty() 测试堆栈是否为空。 2 Object peek...原创 2018-10-31 21:57:55 · 193 阅读 · 0 评论 -
DFS练习【递归入门】组合+判断素数
题目描述已知 n 个整数b1,b2,…,bn以及一个整数 k(k<n)。从 n 个整数中任选 k 个整数相加,可分别得到一系列的和。例如当 n=4,k=3,4 个整数分别为 3,7,12,19 时,可得全部的组合与它们的和为: 3+7+12=22 3+7+19=29 7+12+19=38 3+12+19=34。 现在,要求你计算出和为素数共有多少种。例如上例,...原创 2019-03-20 19:38:29 · 327 阅读 · 0 评论 -
DFS练习 【递归入门】全排列
题目描述 排列与组合是常用的数学方法。先给一个正整数 ( 1 < = n < = 10 )例如n=3,所有组合,并且按字典序输出:1 2 31 3 22 1 32 3 13 1 23 2 1输入输入一个整数n( 1<=n<=10)输出输出所有全排列每个全排列一行,相邻两个数用空格隔开(最后一个数后面没有空格...原创 2019-03-20 20:54:30 · 249 阅读 · 0 评论 -
DFS练习 【递归入门】组合的输出
题目描述排列与组合是常用的数学方法,其中组合就是从n个元素中抽出r个元素(不分顺序且r < = n),我们可以简单地将n个元素理解为自然数1,2,…,n,从中任取r个数。现要求你不用递归的方法输出所有组合。例如n = 5 ,r = 3 ,所有组合为:1 2 31 2 41 2 51 3 41 3 51 4 52 3 42 3 52 4 53...原创 2019-03-20 21:20:53 · 302 阅读 · 0 评论 -
YTU OJ 2990: 链表的基本运算(线性表) 数据结构练习
Description编写一个程序,实现链表的各种基本运算(假设顺序表的元素类型为char),主函数已给出,请补充每一种方法。 1、初始化单链表L;2、采用尾插法插入一个元素;3、输出单链表L;4、输出单链表L的长度;5、判断单链表L是否为空;6、输出单链表L的第三个元素;7、输出元素a的位置;8、在第四个元素位置插入元素f;9、输出单链表L;10、删除L的第三个元素;11、输出单链表L;12、释...原创 2018-04-13 17:23:32 · 1131 阅读 · 0 评论 -
YTU OJ 2989:顺序表基本运算(线性表) 数据结构练习
Description编写一个程序,实现顺序表的各种基本运算(假设顺序表的元素类型为char),主函数已给出,请补充每一种方法。 1、初始化顺序表L;2、采用尾插法插入一个元素;3、输出顺序表L;4、输出顺序表L的长度;5、判断顺序表是否为空;6、输出顺序表L的第三个元素;7、输出元素a的位置;8、在第四个元素位置插入元素f;9、输出顺序表L;10、删除L的第三个元素;11、输出顺序表L;12、释...原创 2018-04-13 16:38:45 · 834 阅读 · 0 评论 -
数据结构——顺序表
问题及代码 编写一个程序exp2-1.cpp,实现顺序表的各种运算(假设顺序表的元素类型为char),并在此基础上完成如下功能:(1)初始化顺序表L;(2)采用尾插法依次插入元素a,b,c,d,e;(3)输出顺序表L;(4)输出顺序表L的长度;(5)判断顺序表L是否为空;(6)输出顺序表L的第3个元素;(7)输出元素a的位置;(8)在第4个元素位置上插入元素f;(9)输出顺序表L;(10)删除L的...原创 2017-05-18 11:13:48 · 616 阅读 · 0 评论 -
数据结构——单链表
问题及代码编写一个程序exp2-2.cpp,实现单链表的各种基本运算(假设单链表的元素类型为char),并在此基础上完成如下功能:(1)初始化单链表h;(2)采用尾插法依次插入元素a,b,c,d,e;(3)输出单链表h;(4)输出单链表h长度;(5)判断单链表h是否为空;(6)输出单链表h的第3个元素;(7)输出元素a的位置;(8)在第4个元素位置上插入元素f;(9)输出单链表h;(10)删除h的...原创 2017-05-18 11:19:55 · 664 阅读 · 0 评论 -
数据结构——栈(顺序栈)
问题及代码编写一个程序,实现顺序栈(假设栈中元素类型为char)的各种基本运算,并在此基础上完成以下功能(1)初始化栈s;(2)判断栈s是否非空;(3)依次进栈元素a,b,c,d,e;(4)判断栈s是否非空;(5)输出栈长度;(6)输出从栈顶到栈底元素;(7)输出出栈序列;(8)判断栈s是否非空;(9)释放栈;代码#include <iostream>#include <mal...原创 2017-05-18 11:29:09 · 1132 阅读 · 0 评论 -
YTU OJ 2238: 括号匹配(栈和队列)
Description假设一个算术表达式中可以包含三种括号:圆括号“(”和“)”,方括号“[”和“]”和花括号“{”和“ ”,且这三种括号可按任意的次序嵌套使用(如:…[…{… …[…]…]…[…]…(…)…)。编写判别给定表达式中所含括号是否正确配对出现的算法。输出结果YES 或者 NO。Input5+{[2X5]+2}OutputYESSample Input8-[{2+7]}Sample O...原创 2017-09-26 16:53:39 · 341 阅读 · 0 评论 -
YTU OJ 2241: 相同序列(栈和队列)
Description 试写一个算法,识别依次读入的一个以@为结束符的字符序列是否为形如‘序列1&序列2’模式的字符序列。其中序列1和序列2中都不含字符‘&’,且序列2是序列1的逆序列。输出YES或者NO。Inputa+b&b+aOutputYESSample Input1+3&3-1Sample OutputNO#include <stdio.h>...原创 2017-09-26 17:37:02 · 570 阅读 · 0 评论 -
YTU OJ 2248: 栈的基本运算(栈和队列)
Description利用栈的基本运算,编写一个算法输入若干整数,以0标识输入结束。然后按与输入相反次序输出这些整数。Input输入:1 2 3 4 5 0Output输出:5 4 3 2 1Sample Input6 7 8 9 10 0Sample Output10 9 8 7 6#include <stdio.h>#include<string.h>#includ...原创 2017-09-26 18:14:47 · 690 阅读 · 0 评论 -
数据结构课程设计——猴子吃桃问题
一、实验题目猴子吃桃子问题有一群猴子摘了一堆桃子,他们每天都吃当前桃子的一半且再多吃一个,到了第10天就只余下一个桃子。用多种方法实现求出原来这群猴子共摘了多少个桃子。要求:1)采用数组数据结构实现上述求解2)采用链数据结构实现上述求解3)采用递归实现上述求解二、实验目的采用数组,链等数据结构实现问题的求解,练习数组,链,递归等方法求解问题三、实验要求求出原来这原创 2017-06-24 15:57:55 · 21096 阅读 · 2 评论 -
YTU OJ 2206: 最快合并链表(线性表) 数据结构练习
[Submit][Status][Web Board]Description知L1、L2分别为两循环单链表的头结点指针,m,n分别为L1、L2表中数据结点个数。要求设计一算法,用最快速度将两表合并成一个带头结点的循环单链表。Inputm=53 6 1 3 5n=4.7 10 8 4Output3 6 1 3 5 7 10 8 4Sample Inputm=73 5 1 3 4 6 0n=5...原创 2018-04-14 13:19:00 · 610 阅读 · 0 评论 -
DFS练习 【递归入门】n皇后 问题(原始的8皇后问题)
题目描述 会下国际象棋的人都很清楚:皇后可以在横、竖、斜线上不限步数地吃掉其他棋子。如何将8个皇后放在棋盘上(有8 * 8个方格),使它们谁也不能被吃掉!这就是著名的八皇后问题。输入一个整数n( 1 < = n < = 10 )输出每行输出对应一种方案,按字典序输出所有方案。每种方案顺序输出皇后所在的列号,相邻两数之间用空格隔开。如果一组可行方案...原创 2019-03-21 21:28:21 · 574 阅读 · 0 评论