数据结构与算法
文章平均质量分 53
wine1995
这个作者很懒,什么都没留下…
展开
-
栈——设计一个有getmin功能的栈
题目:实现一个特殊的栈,在实现栈的基本功能的基础上,再实现返回栈中最小元素的操作。要求:1、pop、push、getMin操作的时间复杂度都是O(1)。2、设计的栈类型可以输用现成的栈结构。思路:使用两个栈,一个用来保存栈中的元素,另一个用于保存每步的最小值代码:原创 2017-08-19 09:46:13 · 223 阅读 · 0 评论 -
PAT乙级刷题记录-3n+1猜想
import java.util.Scanner;public class Main {public static void main(String[] args){Scanner in=new Scanner(System.in);int n=in.nextInt();int count=0;if(n0){while(n!=1){if(n%2==0)原创 2017-03-08 14:09:01 · 202 阅读 · 0 评论 -
PAT乙级-写出这个数
package 写出这个数;import java.util.Scanner;public class Main {public static void main(String[] args){Scanner s=new Scanner(System.in);String str=s.next();int len=str.length(); String[] a={原创 2017-03-08 22:49:10 · 192 阅读 · 0 评论 -
PAT乙级-素数对猜想
题目描述:让我们定义 dn 为:dn = pn+1 - pn,其中 pi 是第i个素数。显然有 d1=1 且对于n>1有 dn 是偶数。“素数对猜想”认为“存在无穷多对相邻且差为2的素数”。现给定任意正整数N (5),请计算不超过N的满足猜想的素数对的个数。输入格式:每个测试输入包含1个测试用例,给出正整数N。输出格式:每个测试用例的输出占一行,不超过N的满足猜想的原创 2017-03-21 16:42:02 · 216 阅读 · 0 评论 -
PAT乙级—数组循环右移
1008. 数组元素循环右移问题 (20)时间限制400 ms内存限制65536 kB代码长度限制8000 B判题程序Standard一个数组A中存有N(N>0)个整数,在不允许使用另外数组的前提下,将每个整数循环向右移M(M>=0)个位置,即将A中的数据由(A0A1……原创 2017-03-26 16:06:01 · 277 阅读 · 0 评论 -
PAT乙级—说反话
1009. 说反话 (20)时间限制400 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者CHEN, Yue给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出。输入格式:测试输入包含一个测试用例,在一行原创 2017-03-26 16:19:00 · 179 阅读 · 0 评论 -
PAT乙级—A+B和C
1011. A+B和C (15)时间限制150 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者HOU, Qiming给定区间[-231, 231]内的3个整数A、B和C,请判断A+B是否大于C。输入格式:原创 2017-03-26 16:57:43 · 175 阅读 · 0 评论 -
PAT-剪刀石头布
题目描述大家应该都会玩“锤子剪刀布”的游戏:现给出两人的交锋记录,请统计双方的胜、平、负次数,并且给出双方分别出什么手势的胜算最大。输入描述:输入第1行给出正整数N(<=105),即双方交锋的次数。随后N行,每行给出一次交锋的信息,即甲、乙双方同时给出的的手势。C代表“锤子”、J代表“剪刀”、B代表“布”,第1个字母代表甲方,第2个代表乙方,中间有1个空格。原创 2017-08-17 20:11:58 · 316 阅读 · 0 评论 -
PAT-A除以B
本题要求计算A/B,其中A是不超过1000位的正整数,B是1位正整数。你需要输出商数Q和余数R,使得A = B * Q + R成立。输入描述:输入在1行中依次给出A和B,中间以1空格分隔。输出描述:在1行中依次输出Q和R,中间以1空格分隔。输入例子:123456789050987654321 7输出例子:17636684150141093474原创 2017-08-17 16:12:41 · 231 阅读 · 0 评论 -
2017/11/24(数据结构)
1.链表的倒数第K个查找void search(LinkList &L, ElemType k){ LNode *p,*q; p = L->next; q = L->next; int count = 0; while(p != nill){ if(count < k){ count++; }原创 2017-11-24 20:51:45 · 166 阅读 · 0 评论