PTA数据结构题+大二习题
文章平均质量分 79
ccDLlyy
不忘初心,方得始终
展开
-
在一个数组中实现两个堆栈
4-7 在一个数组中实现两个堆栈 (20分)本题要求在一个数组中实现两个堆栈。函数接口定义:Stack CreateStack( int MaxSize );bool Push( Stack S, ElementType X, int Tag );ElementType Pop( Stack S, int Tag );其中Tag是堆栈编号,取1或2;Max原创 2016-09-24 09:25:19 · 6897 阅读 · 1 评论 -
PTA 5-10 树的同构
5-10 树的同构 (25分)给定两棵树T1和T2。如果T1可以通过若干次左右孩子互换就变成T2,则我们称两棵树是“同构”的。例如图1给出的两棵树就是同构的,因为我们把其中一棵树的结点A、B、G的左右孩子互换后,就得到另外一棵树。而图2就不是同构的。图1图2现给定两棵树,请你判断它们是否是同构的。输入格式:原创 2016-11-09 15:58:59 · 1057 阅读 · 0 评论 -
PTA List Leaves
5-8 List Leaves (25分)Given a tree, you are supposed to list all the leaves in the order of top down, and left to right.Input Specification:Each input file contains one test case. For原创 2016-10-29 16:57:52 · 2414 阅读 · 0 评论 -
PTA 树种统计
5-12 树种统计 (25分)随着卫星成像技术的应用,自然资源研究机构可以识别每一棵树的种类。请编写程序帮助研究人员统计每种树的数量,计算每种树占总数的百分比。输入格式:输入首先给出正整数N(\le 10^5≤105),随后N行,每行给出卫星观测到的一棵树的种类名称。种类名称由不超过30个英文字母和空格组成(大小写不区分)。输出格式:按字典序递增输原创 2016-11-09 18:23:06 · 1737 阅读 · 0 评论 -
PTA The World's Richest
5-17 The World's Richest (25分)Forbes magazine publishes every year its list of billionaires based on the annual ranking of the world's wealthiest people. Now you are supposed to simulate thi原创 2016-11-21 13:39:25 · 673 阅读 · 0 评论 -
PTA 寻找大富翁
5-18 寻找大富翁 (25分)2015年胡润研究院的调查显示,截至2014年9月,个人资产在600万元以上高净值人群达290万人。假设给出N个人的个人资产值,请快速找出资产排前M位的大富翁。输入格式:输入首先给出两个正整数NN(\le 10^6≤106)和MM(\le 10≤10),其中NN为总人数,MM为需要找出的大富翁数;接下来一行给出NN个原创 2016-11-21 13:37:15 · 2182 阅读 · 0 评论 -
5-19 PAT Judge
5-19 PAT Judge (25分)The ranklist of PAT is generated from the status list, which shows the scores of the submissions. This time you are supposed to generate the ranklist for PAT.Input Sp原创 2016-11-21 20:43:49 · 575 阅读 · 0 评论 -
4-19 Count Connected Components(DFS的栈实现+邻接表存图)
4-19 Count Connected Components (20分)Write a function to count the number of connected components in a given graph.Format of functions:int CountConnectedComponents( LGraph Graph );原创 2016-12-06 20:27:25 · 1234 阅读 · 0 评论 -
PTA 5-25 畅通工程之局部最小花费问题
5-25 畅通工程之局部最小花费问题 (35分)某地区经过对城镇交通状况的调查,得到现有城镇间快速道路的统计数据,并提出“畅通工程”的目标:使整个地区任何两个城镇间都可以实现快速交通(但不一定有直接的快速道路相连,只要互相间接通过快速路可达即可)。现得到城镇道路统计表,表中列出了任意两城镇间修建快速路的费用,以及该道路是否已经修通的状态。现请你编写程序,计算出全地区畅通需要的最原创 2017-01-21 18:08:53 · 2324 阅读 · 0 评论 -
PTA Harry Potter's Exam(Floyd算法)
5-26 Harry Potter's Exam (25分)In Professor McGonagall's class of Transfiguration, Harry Potter is learning how to transform one object into another by some spells. He has learnt that, to tur原创 2016-12-07 17:17:14 · 1313 阅读 · 0 评论 -
5-20 电话聊天狂人
5-20 电话聊天狂人 (25分)给定大量手机用户通话记录,找出其中通话次数最多的聊天狂人。输入格式:输入首先给出正整数NN(\le 10^5≤105),为通话记录条数。随后NN行,每行给出一条通话记录。简单起见,这里只列出拨出方和接收方的11位数字构成的手机号码,其中以空格分隔。输出格式:在一行中给出聊天狂人的手机号码及其通话次数,其间以原创 2016-11-21 21:54:42 · 1448 阅读 · 0 评论 -
还原二叉树
5-9 还原二叉树 (25分)给定一棵二叉树的先序遍历序列和中序遍历序列,要求计算该二叉树的高度。输入格式:输入首先给出正整数N(\le≤50),为树中结点总数。下面两行先后给出先序和中序遍历序列,均是长度为N的不包含重复英文字母(区别大小写)的字符串。输出格式:输出为一个整数,即该二叉树的高度。输入样例:9ABDFGHIECFDHGIBEA原创 2016-11-07 22:37:16 · 885 阅读 · 0 评论 -
是否同一棵二叉搜索树
5-7 是否同一棵二叉搜索树 (25分)给定一个插入序列就可以唯一确定一棵二叉搜索树。然而,一棵给定的二叉搜索树却可以由多种不同的插入序列得到。例如分别按照序列{2, 1, 3}和{2, 3, 1}插入初始为空的二叉搜索树,都得到一样的结果。于是对于输入的各种插入序列,你需要判断它们是否能生成一样的二叉搜索树。输入格式:输入包含若干组测试数据。每组数据的第1行给出两原创 2016-11-07 19:47:12 · 1018 阅读 · 0 评论 -
表达式转换
5-4 表达式转换 (25分)算术表达式有前缀表示法、中缀表示法和后缀表示法等形式。日常使用的算术表达式是采用中缀表示法,即二元运算符位于两个运算数中间。请设计程序将中缀表达式转换为后缀表达式。输入格式:输入在一行中给出不含空格的中缀表达式,可包含+、-、*、\以及左右括号(),表达式不超过20个字符。输出格式:在一行中输出转换后的后缀表达式,要求不同对原创 2016-10-16 22:52:20 · 2933 阅读 · 0 评论 -
反转链表
1025. 反转链表(25)给定一个常数K以及一个单链表L,请编写程序将L中每K个结点反转。例如:给定L为1→2→3→4→5→6,K为3,则输出应该为3→2→1→6→5→4;如果K为4,则输出应该为4→3→2→1→5→6,即最后不到K个元素不反转。输入格式:每个输入包含1个测试用例。每个测试用例第1行给出第1个结点的地址、结点总个数正整数N(5)、以及正整数K(原创 2016-09-24 15:03:35 · 651 阅读 · 0 评论 -
两个有序链表序列的合并
02-线性结构1 两个有序链表序列的合并 (15分)本题要求实现一个函数,将两个链表表示的递增整数序列合并为一个递增的整数序列。函数接口定义:List Merge( List L1, List L2 );其中List结构定义如下:typedef struct Node *PtrToNode;struct Node { ElementType原创 2016-09-24 15:55:16 · 12990 阅读 · 1 评论 -
Maximum Subsequence Sum
01-复杂度2 Maximum Subsequence Sum (25分)Given a sequence of KK integers { N_1N1, N_2N2, ..., N_KNK }. A continuous subsequence is defined to be { N_iNi, N_{i+1}Ni+1, ...,原创 2016-09-24 23:01:50 · 1388 阅读 · 1 评论 -
Pop Sequence
02-线性结构4 Pop Sequence (25分)Given a stack which can keep MMM numbers at most. Push NNN numbers in the order of 1, 2, 3, ..., NNN and pop randomly. You are supposed to tell if a given sequ原创 2016-09-25 09:34:05 · 4692 阅读 · 0 评论 -
4-1 Deque (25分)
4-1 Deque (25分)A "deque" is a data structure consisting of a list of items, on which the following operations are possible:Push(X,D): Insert item X on the front end of deque D.Pop(D): Remo原创 2016-09-25 16:37:38 · 5258 阅读 · 0 评论 -
Add Two Polynomials
4-3 Add Two Polynomials (20分)Write a function to add two polynomials. Do not destroy the input. Use a linked list implementation with a dummy head node. Note: The zero polynomial is represen原创 2016-09-28 13:46:19 · 4547 阅读 · 3 评论 -
Reverse Linked List
4-4 Reverse Linked List (20分)Write a nonrecursive procedure to reverse a singly linked list in O(N)O(N) time using constant extra space.Format of functions:List Reverse( List L );原创 2016-09-28 14:29:20 · 3943 阅读 · 3 评论 -
Evaluate Postfix Expression
4-5 Evaluate Postfix Expression (25分)Write a program to evaluate a postfix expression. You only have to handle four kinds of operators: +, -, x, and /.Format of functions:ElementType E原创 2016-09-28 22:52:32 · 6167 阅读 · 1 评论 -
PAT 1002. A+B for Polynomials (25)
1002. A+B for Polynomials (25)This time, you are supposed to find A+B where A and B are two polynomials.InputEach input file contains one test case. Each case occupies 2 lines, and each原创 2016-10-01 13:08:57 · 652 阅读 · 0 评论 -
列车厢调度
1 ====== <--移动方向 / 3 ===== \ 2 ====== -->移动方向大家或许在某些数据结构教材上见到过“列车厢调度问题”(当然没见过也不要紧)。今天,我们就来实际操作一下列车厢的调度。对照上方的ASCII字符图,问题描述如下:有三条平行的列车轨道(1、2、3)以及1-3和2-3两段连接轨原创 2016-10-16 22:06:16 · 4059 阅读 · 1 评论 -
PTA 哥尼斯堡的“七桥问题”(欧拉图的判定)
图G的一个回路,若它恰通过G中每条边一次,则称该回路为欧拉(Euler)回路,具有欧拉回路的图称为欧拉图。1.无向图中:所给定的图为连通图,且所有节点的度为偶数2.有向图中:所给定的图为连通图,且所有节点的度为零#include #include #include int map[1005][1005];int book[10005];int degree[1005];in原创 2016-12-07 13:37:56 · 2695 阅读 · 0 评论