ACM
文章平均质量分 66
liygcheng2010
这个作者很懒,什么都没留下…
展开
-
算法面试:精选微软等公司经典的算法面试100题 第26-35题
算法面试:精选微软等公司经典的算法面试100题 第26-35题 26.左旋转字符串题目:定义字符串的左旋转操作:把字符串前面的若干个字符移动到字符串的尾部。如把字符串abcdef左旋转2位得到字符串cdefab。请实现字符串左旋转的函数。要求时间对长度为n的字符串操作的复杂度为O(n),辅助内存为O(1)。27.跳台阶问题题转载 2013-10-18 14:46:15 · 1440 阅读 · 0 评论 -
九度OnlineJudge之1020:最小长方形
一题简单的贪心原创 2013-09-12 20:26:46 · 1351 阅读 · 0 评论 -
九度OnlineJudge之1014:排名
题目描述: 今天的上机考试虽然有实时的Ranklist,但上面的排名只是根据完成的题数排序,没有考虑每题的分值,所以并不是最后的排名。给定录取分数线,请你写程序找出最后通过分数线的考生,并将他们的成绩按降序打印。输入: 测试输入包含若干场考试的信息。每场考试信息的第1行给原创 2013-09-11 14:20:25 · 1355 阅读 · 0 评论 -
九度OnlineJudge之1012:畅通工程
题目描述: 某省调查城镇交通状况,得到现有城镇道路统计表,表中列出了每条道路直接连通的城镇。省政府“畅通工程”的目标是使全省任何两个城镇间都可以实现交通(但不一定有直接的道路相连,只要互相间接通过道路可达即可)。问最少还需要建设多少条道路?输入: 测试输入包含若干测试原创 2013-09-10 23:58:10 · 1438 阅读 · 0 评论 -
九度OnlineJudge之1009:二叉搜索树
题目描述: 判断两序列是否为同一二叉搜索树序列输入: 开始一个数n,(1接下去一行是一个序列,序列长度小于10,包含(0~9)的数字,没有重复数字,根据这个序列可以构造出一颗二叉搜索树。接下去的n行有n个序列,每个序列格式跟第一个序列一样,请判断这两个序列是否能组成同一颗二叉搜索原创 2013-09-10 20:04:31 · 1513 阅读 · 0 评论 -
浙江大学PAT上机题解析之1007. Maximum Subsequence Sum (25)
Given a sequence of K integers { N1, N2, ..., NK }. A continuous subsequence is defined to be { Ni, Ni+1, ..., Nj } where 1 <= i <= j <= K. TheMaximum Subsequence is the continuous subsequence whi原创 2013-09-10 21:23:49 · 2307 阅读 · 1 评论 -
九度OnlineJudge之1010 A + B
题目描述: 读入两个小于100的正整数A和B,计算A+B.需要注意的是:A和B的每一位数字由对应的英文单词给出.输入: 测试输入包含若干测试用例,每个测试用例占一行,格式为"A + B =",相邻两字符串有一个空格间隔.当A和B同时为0时输入结束,相应的结果不要输出.输出:原创 2013-09-10 20:27:45 · 1276 阅读 · 0 评论 -
实用数据结构之二叉排序树小结
实用数据结构之二叉排序树小结:定义:满足以下条件的二叉树: 对于树上任意一个结点,其上的数值必大于等于其左子树上任意结点的数值 必小于等于其右子树上任意结点的数值故二叉排序树的插入:1.若当前树为空,则x为其根结点2.若当前结点大于x,则x插入其左子树, 若当前结点小于x,则x插入其右子树若当前结点等于x,则根据具体情况选择插入左子树或者右子树或者直接忽略例原创 2013-09-10 16:04:54 · 1346 阅读 · 0 评论 -
实用数据结构总结之二叉树遍历
二叉树简单总结:二叉树节点结构:struct Node{Node *lchild;//指向其左儿子节点的指针,当其不存在左儿子时为NULLNode *rchild;//指向其右儿子节点的指针,当其不存在右儿子时为NULL/*节点附加信息.....*/}对于该结构,先序遍历,中序遍历,后序遍历分别为:先序遍历:void preOrder(Node *T原创 2013-09-10 14:04:39 · 1240 阅读 · 0 评论 -
实用数据结构总结之哈夫曼树小结
哈夫曼树:定义: 给定n个节点和它们的权值,以它们为叶子节点构造一颗带权路径和最小的二叉树,该二叉树即为哈夫曼树,亦称最优树。求哈夫曼树算法步骤:1.将所有节点放入集合K2.若集合K中剩余节点大于2个,则取出其中权值最小的两个节点,构造它们同时为某个新节点的左右儿子,该新节点是它们共同的双亲节点,设定它的权值为其两个儿子节点的权值和。并将该父亲节点放入集合K,重复步骤原创 2013-09-09 22:27:03 · 3939 阅读 · 0 评论 -
浙江大学PAT上机题解析之5-05. QQ帐户的申请与登陆
实现QQ新帐户申请和老帐户登陆的简化版功能。最大挑战是:据说现在的QQ号码已经有10位数了。输入格式说明: 输入首先给出一个正整数N(5),随后给出N行指令。每行指令的格式为:“命令符(空格)QQ号码(空格)密码”。其中命令符为“N”(代表New)时表示要新申请一个QQ号,后面是新帐户的号码和密码;命令符为“L”(代表Login)时表示是老帐户登陆,后面是登陆信息。QQ号码为一个不超过10原创 2013-09-03 23:19:53 · 2911 阅读 · 0 评论 -
浙江大学PAT上机题解析之3-04. 一元多项式的乘法与加法运算
多项式 乘法与加法原创 2013-09-02 11:26:46 · 3668 阅读 · 0 评论 -
浙江大学PAT上机题解析之3-09. 队列中的元素排序
给定一个队列,请用一系列合法的队列操作函数,包括:(1) int IsEmptyQ(Queue Q)(2) void AddQ(Queue Q, ElementType item)(3) ElementType DeleteQ(Queue Q)将队列中的元素从小到大排序。注意:不能直接通过数组下标直接访问队列(数组)中的元素。可以使用一个辅助队列。排序后的结果应存放在原队列中。原创 2013-09-02 19:41:42 · 3280 阅读 · 7 评论 -
浙江大学PAT上机题解析之3-05. 求链式线性表的倒数第K项
浙大PAT 链式线性表倒数第K项原创 2013-09-02 12:10:18 · 4267 阅读 · 0 评论 -
浙江大学PAT上机题解析之1014. 福尔摩斯的约会 (20)
1014. 福尔摩斯的约会 (20)时间限制 50 ms内存限制 32000 kB代码长度限制 8000 B判题程序 Standard 作者 CHEN, Yue大侦探福尔摩斯接到一张奇怪的字条:“我们约会吧! 3485djDkxh4hhGE 2984akD原创 2013-09-02 00:20:09 · 8112 阅读 · 8 评论 -
浙江大学PAT上机题解析之1015. 德才论 (25)
PAT 德才论 解题报告原创 2013-09-01 22:05:41 · 3010 阅读 · 0 评论 -
浙江大学PAT上机题解析之2-13. 两个有序序列的中位数
已知有两个等长的非降序序列S1, S2, 设计函数求S1与S2并集的中位数。有序序列A0, A1…AN-1的中位数指A(N-1)/2的值,即第[(N+1)/2]个数(A0为第1个数)。输入格式说明:输入分3行。第1行给出序列的公共长度N(0输出格式说明:在一行中输出两个输入序列的并集序列的中位数。样例输入与输出: 序号输入输出1原创 2013-09-01 01:59:18 · 5867 阅读 · 2 评论 -
浙江大学PAT上机题解析之2-12. 两个有序链表序列的交集
链表并集原创 2013-08-31 23:31:14 · 6441 阅读 · 1 评论 -
九度OnlineJudge之1017:还是畅通工程
典型的最小生成树模板原创 2013-09-12 19:55:33 · 1567 阅读 · 0 评论 -
九度OnlineJudge之1018:统计同成绩学生人数
很简单的一道题,但是能够很好地体现Hash方法思想的一道题原创 2013-09-12 20:03:42 · 1604 阅读 · 0 评论 -
算法面试:精选微软经典的算法面试100题(第21-25题)
算法面试:精选微软等公司经典的算法面试100题 第21-25题--------------------------------- 2010年10月15日第21题2010年中兴面试题编程求解:输入两个整数 n 和 m,从数列1,2,3.......n 中 随意取几个数,使其和等于 m ,要求将其中所有的可能组合列出来.第22题:有4张红色的转载 2013-10-18 14:44:46 · 1098 阅读 · 0 评论 -
[答案V0.1版]精选微软等数据结构+算法面试100题 [前20题]
精选微软等数据结构+算法面试100题 -------我很享受思考的过程,个人思考的全部结果,都放在了这篇帖子上,[整理]精选微软等数据结构+算法面试100题现在,我要,好好整理下,这篇帖子我已做出来的题目答案 了。展示自己的思考结果,我觉得很骄傲。:)。----------------------------------------------------------转载 2013-10-18 14:51:42 · 1518 阅读 · 0 评论 -
[整理II]精选微软等公司数据结构+算法面试100题 [第41-60题]
精选微软等公司数据结构+算法,经典面试100题 [第1题-第60题] -------- 首次公布 July声明:首次发布。请尊重作者。20:38:53 2010-10-29----------------------------------------------------转载 2013-10-18 14:49:39 · 1099 阅读 · 0 评论 -
[整理I]精选微软等公司数据结构+算法面试100题 [第1-40题]
精选微软等公司,数据结构+算法,经典面试100题 --------之前40题--------------- --------------1.把二元查找树转变成排序的双向链表 题目:输入一棵二元查找树,将该二元查找树转换成一个排序的双向链表。要求不能创建任何新的结点,只调整指针的指向。转载 2013-10-18 14:47:30 · 1510 阅读 · 0 评论 -
一、A*搜索算法
经典算法研究系列:一、A*搜索算法 作者:July、二零一一年一月更多请参阅:十三个经典算法研究与总结、目录+索引。----------------------------------博主说明:1、本经典算法研究系列,此系列文章写的不够好之处,还望见谅。2、本经典算法研究系列,系我参考资料,一转载 2013-10-18 15:01:38 · 1316 阅读 · 0 评论 -
九度OnlineJudge之1032:ZOJ
题目描述: 读入一个字符串,字符串中包含ZOJ三个字符,个数不一定相等,按ZOJ的顺序输出,当某个字符用完时,剩下的仍然按照ZOJ的顺序输出。输入: 题目包含多组用例,每组用例占一行,包含ZOJ三个字符,当输入“E”时表示输入结束。1输出: 对于每组输入,请输出一行,表示按照要求处理后的字符串。具体可见样例。样例输入: ZZOOOJJJ原创 2013-09-24 21:49:07 · 1219 阅读 · 0 评论 -
ACM-必备知识点
时间复杂度(渐近时间复杂度的严格定义,NP问题,时间复杂度的分析方法,主定理)排序算法(平方排序算法的应用,Shell排序,快速排序,归并排序,时间复杂度下界,三种线性时间排 序,外部排序)数论(整除,集合论,关系,素数,进位制,辗转相除,扩展的辗转相除,同余运算,解线性同余方程,中国剩余定理)指针(链表,搜索判重,邻接表,开散列,二叉树的表示,多叉树的表示)按位运算(and,o转载 2013-10-06 17:23:42 · 2344 阅读 · 0 评论 -
九度OnlineJudge之1036:Old Bill
题目描述: Among grandfather's papers a bill was found. 72 turkeys $_679_ The first and the last digits of the number that obviously represented the total price of those turkeys are replace原创 2013-10-06 16:20:10 · 1336 阅读 · 0 评论 -
九度OnlineJudge之1029:魔咒词典
题目描述: 哈利波特在魔法学校的必修课之一就是学习魔咒。据说魔法世界有100000种不同的魔咒,哈利很难全部记住,但是为了对抗强敌,他必须在危急时刻能够调用任何一个需要的魔咒,所以他需要你的帮助。 给你一部魔咒词典。当哈利听到一个魔咒时,你的程序必须告诉他那个魔咒的功能;当哈利需要某个功能但不知道该用什么魔咒时,你的程序要原创 2013-09-21 21:13:43 · 1473 阅读 · 1 评论 -
BFS/DFS 模板 代码
#include#include#include#includeusing namespace std;const int maxn=100;bool vst[maxn][maxn]; // 访问标记int dir[4][2]={0,1,0,-1,1,0,-1,0}; // 方向向量struct State // BFS 队列中的状态数据结构{ int x,y; // 坐标位转载 2013-10-06 17:38:14 · 2136 阅读 · 0 评论 -
线段树
已迁往:http://www.wypblog.com/archives/144一、线段树基本概念 线段树是一种二叉搜索树,与区间树相似,它将一个区间划分成一些单元区间,每个单元区间对应线段树中的一个叶结点。 对于线段树中的每一个非叶子节点[a,b],它的左儿子表示的区间为[a,(a+b)/2],右儿子表示的区间为[(a+b)/2+1,b]。因此线段树是平衡二叉转载 2013-09-20 14:07:44 · 1005 阅读 · 0 评论 -
九度OnlineJudge之1034:寻找大富翁
题目描述: 浙江桐乡乌镇共有n个人,请找出该镇上的前m个大富翁.输入: 输入包含多组测试用例. 每个用例首先包含2个整数n(0 n和m同时为0时表示输入结束.输出: 请输出乌镇前m个大富翁的财产数,财产多的排前面,如果大富翁不足m个,则全部输出,每组输出占一行.样例输入: 3 12 5 -15 3原创 2013-10-05 16:03:34 · 1294 阅读 · 0 评论 -
九度OnlineJudge之1033:继续xxx定律
题目描述: 当n为3时,我们在验证xxx定律的过程中会得到一个序列,3,5,8,4,2,1,将3称为关键数,5,8,4,2称为覆盖数。现在输入n个数字a[i],根据关键数与覆盖数的理论,我们只需要验证其中部分数就可以确定所有数满足xxx定律,输出输入的n个数中的关键数。如果其中有多个关键数的话按照其输入顺序的逆序输出。输入: 输入数据包含多个用例,每个用例首先包原创 2013-10-05 15:44:49 · 1202 阅读 · 0 评论 -
九度OnlineJudge之1027:欧拉回路
//欧拉回路(无向图)经典解法:并查集+奇偶判断 (有向图也很简单,只要将Degree标志量拆分成inDegree和outDegree加之稍微变化一点的奇偶判断即可)原创 2013-09-19 03:15:53 · 1773 阅读 · 0 评论 -
九度OnlineJudge之1023:EXCEL排序
题目描述: Excel可以对一组纪录按任意指定列排序。现请你编写程序实现类似功能。 对每个测试用例,首先输出1行“Case i:”,其中 i 是测试用例的编号(从1开始)。随后在 N 行中输出按要求排序后的结果,即:当 C=1 时,按学号递增排序;当 C=2时,按姓名的非递减字典序排序;当 C=3时,按成绩的非递减排序原创 2013-09-15 17:32:13 · 1702 阅读 · 0 评论 -
九度OnlineJudge之1022:游船出租
题目描述: 现有公园游船租赁处请你编写一个租船管理系统。当游客租船时,管理员输入船号并按下S键,系统开始计时;当游客还船时,管理员输入船号并按下E键,系统结束计时。船号为不超过100的正整数。当管理员将0作为船号输入时,表示一天租船工作结束,系统应输出当天的游客租船次数和平均租船时间。 注意:由于线路偶尔会有故障,可能出现不完原创 2013-09-15 16:42:06 · 1438 阅读 · 0 评论 -
九度OnlineJudge之1021:统计字符
题目描述: 统计一个给定字符串中指定的字符出现的次数。输入: 测试输入包含若干测试用例,每个测试用例包含2行,第1行为一个长度不超过5的字符串,第2行为一个长度不超过80的字符串。注意这里的字符串包含空格,即空格也可能是要求被统计的字符之一。当读到'#'时输入结束,相应的结果不要输出。输出:原创 2013-09-15 13:22:01 · 1499 阅读 · 1 评论 -
浙江大学PAT上机题解析之1012. 数字分类 (20)
1012. 数字分类 (20)时间限制 50 ms内存限制 32000 kB代码长度限制 8000 B判题程序 Standard 作者 CHEN, Yue给定一系列正整数,请按要求对数字进行分类,并输出以下5个数字:A1 = 能被5整除的数字中所有偶数的原创 2013-09-01 10:32:17 · 2737 阅读 · 0 评论 -
浙江大学PAT上机题解析之2-11. 两个有序链表序列的合并
浙江大学 PAT 有序链表合并效率问题原创 2013-08-31 18:02:02 · 5222 阅读 · 0 评论 -
C++ STL 学习笔记
#.string 建议 使用string 的方便性就不用再说了,这里要重点强调的是string的安全性。 string并不是万能的,如果你在一个大工程中需要频繁处理字符串,而且有可能是多线程,那么你一定要慎重(当然,在多线程下你使用任何STL容器都要慎重)。 string的实现和效率并不一定是你想象的那样,如果你对大量的字符串操作,而且特别关心其效率,那么你有两个选择,首先,你转载 2013-08-13 18:31:05 · 1638 阅读 · 3 评论