愿你坚持不懈,努力进步,进阶成自己理想的人

—— 2017.09, 写给3年后的自己

PAT:日程安排(多重继承+重载)

这题也真是诡异,之前用转为秒的方法,无法全部通过。后来试了另外一种解法,就过了 Orz 已有一个日期类Date,包括三个protected成员数据 int year; int month; int day; 另有一个时间类Time,包括三个protected成员数据 int hour; int minute; in...

PHP升级到5.3后执行速度变慢的解决方案

由于学习需要,最近把PHP换成了5.3,但是突然发现执行速度比原来慢了很多。查阅了相关资料,发现是和数据库主机配置有关。在PHP5.3中,会考虑是IPv4还是IPv6,对于$hostname="localhost"这种配置项,PHP在读取到localhost的时候会犹豫,从而影响了执行速度。 解决办法: 方法一:直接把数据库服务器地...

jQuery实现文字上下滚动

实现背景: 有时候我们需要实现文字上下滚动的效果,一个实际应用背景就是展示通知。我们在网站上通常会有一个高度一定的区域用来展示通知,然而通知有好几条,而这个区域一次只能显示一条。这种情况下,就需要文字上下滚动,来循环播放每一条通知。 实现原理 jQuery的animate技术 ...

PAT4:MyStack

请设计这样的一个栈 class MyStack,实现普通栈的操作:pop(),push(),size(),另外,再设计一个友元函数,PeekMedian() ,返回栈中的中位数。(中位数定义:N为偶数时,栈中第(N/2)小的元素,N为奇数时第 ((N+1)/2) 小的数) Input Specification: 每个输入文件包含一组case. 对于每...

PAT4:说反话

给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出。要求创建一个Sentence类,及反向输出的友元函数 输入格式:测试输入包含多个测试用例,每个用例占一行,在每一行内给出总长度不超过80的字符串。字符串由若干单词和若干空格组成,其中单词是由英文字母(大小写有区分)组成的字符串,单词之间用1个空格分开,输入保证句子末尾没有多余的空格。 输出格式:输出倒序后的句子。

PAT4:程序猿和产品狗

在公司里面,程序猿经常有一堆todolist要做,而这些todolist是产品经理分配给他们的。但是当程序员遇到不懂技术的产品狗时,就悲剧了。产品经理经常修改他们的todolist,比如:添加,减少他们的todolist。 请设计一个类CodeMonkey ,表示程序猿,另一个类ProductDog,表示产品经理。 CodeMonkey类有私有成员 name,todolist。

PAT4:寻找最高成绩

定义一个学生类Student,数据成员包括学号、姓名和成绩;成员函数有:构造函数,设置数据成员的值,读取数据成员的值。在主函数中定义包含n个对象的数组,再编写一个Student类的友元函数,查找成绩最高的那一项记录。 输入格式: 测试输入包含若干测试用例,每个测试用例占一行。当读入n=0时输入结束,相应的结果不要输出。 输入输出示例:括号内为说明 5 (n=5,后面...

PAT-练习3:求日期和时间

定义一个日期类Date,私有成员为year,month,day。定义一个Time类,私有成员为hour,minute。两个类中各有一个成员函数display(),用来输出私有成员。程序输入年,月,日,时,分。中间以空格隔开。具体输出格式如下。输入0 0 0 0 0时结束。 Sample Input: 2013 5 21 8 5 2012 12 12 12 11 ...

PAT-练习3:该日是该年的第几天

定义一个日期类Date,内有数据成员年、月、日,另有成员函数:构造函数用于初始化数据成员,输出,闰年的判断。 编写主函数:创建日期对象,计算并输出该日是该年的第几天。 输入格式: 测试输入包含若干测试用例,每个测试用例占一行。当读入0 0 0时输入结束,相应的结果不要输出。 输入样例: 2006 3 5 2000 3 5 0 0 0 输...

PAT-练习3:链表操作

定义一个单向链表,并有基本运算: Node* creatNode()用于创建链表; void print(struct Node head)用于输出链表; Node deleteNode(struct Node *head) 用于删除链表中偶数值结点。 编程实现:输入一个 T 表示有T组case,对于每个case,输入若干个正整数(输入-1为结...

PAT-练习3:顺序表操作

定义一个顺序表SeqList,并有基本运算: void creat(SeqList *p)用于创建顺序表. void insert(SeqList *p,int item)用于在顺序表中按序插入一个整数item, void print(SeqList *p)用于输出结果。 顺序表的数据包括: int *data; int size;

PAT-练习3:队列

请实现一个MyQueue类,实现出队,入队,求队列长度. 实现入队函数 void push(int x); 实现出队函数 int pop(); 实现求队列长度函数 int size(); Input Specification: 每个输入包含1个测试用例。每个测试用例第一行给出一个正整数 n (n <= 10^6) ,接下去n行每行一个数字,...

PAT-课后练习2-(F)输入输出

可爱的直角梯形。 输入上底和下底的长度(大于1,小于20的正整数)和用来绘梯形的字符,当上底与下底相等时,输出“NO”,并结束;否则输出直角梯形(直角梯形的高为上下底长度之差的绝对值+1),并处理下一条输入。 输入格式: 每行输入三个元素,第1个和第2个为上下底的长度,第3个为用来绘梯形的字符。 输出格式: 输出如样例所示之直角梯形。 输...