风言枫语  
上一页 1 ··· 29 30 31 32 33 34 35 36 37 ··· 235 下一页

2013年10月12日

摘要: 给出一个整型数组num[],对其中的每个元素,输出在它左侧且比它小的最近元素,要求时间复杂度为O(n)。例如int num[]={2,4,1,3},2无左侧最近元素;4左侧最近的是2;1没有;3左侧最近的是1.分析:创建一个栈,然后将数组中的元素从右至左依次压入栈中。对每个元素,入栈前先检查栈顶元素是否比它大,若是的话,则该元素即为栈顶元素的左侧最近小元素,输出结果,栈顶弹出,再看此时的新栈顶是否还比当前元素大。直到栈顶元素不大于当前元素时,再将该元素压入栈中。 当所有元素均压入栈时,栈中剩下的元素均不存在左侧最近小元素,将其结果输出。代码如下:// [10/10/2013 qingez... 阅读全文
posted @ 2013-10-12 09:14 风言枫语 阅读(162) 评论(0) 推荐(0)
 
摘要: 题意:两个人石头剪刀布,一个人的出法已确定,另一个人的出法有一定约束,某两次要相同或者不同,问你第二个人能否全部都不失败。思路:根据Bob出的情况,我们可以确定每次Alice有两种方案。R与P,S矛盾,P与R,S矛盾,S与R,P矛盾。根据Bob出的情况建边:如果Bob出的是石头(R)则Alice可以出石头或者布,就是~R与~P矛盾,~P与~R矛盾,建边~R—>P,~P—>R。........................................根据约束条件:如果a,b两轮是一样的就是Ra与~Rb矛盾,Rb与~Ra矛盾,建边Ra—>Rb,Rb—>Ra,..... 阅读全文
posted @ 2013-10-12 09:10 风言枫语 阅读(184) 评论(0) 推荐(0)
 
摘要: 利用广度优先搜索,找出每层的叶子节点的个数。#include #include #include #include using namespace std;vector> tree;vector ans;void BFS(int s){ queue> q; q.push(make_pair(s, 0)); int cur_step = 0; int cnt = 0; while (!q.empty()) { int id = q.front().first; int step = q.front().second; q.pop(); if(step > cur_step) { 阅读全文
posted @ 2013-10-12 09:08 风言枫语 阅读(176) 评论(0) 推荐(0)
 
摘要: /* * URAL_1014.cpp * * Created on: 2013年10月11日 * Author: Administrator */#include #include #include #include using namespace std;const int maxn = 11;int a[maxn];int main() { int n; scanf("%d", &n); if (n == 0) { printf("10\n"); return 0; } if (n == 1) { printf("1\n" 阅读全文
posted @ 2013-10-12 09:06 风言枫语 阅读(160) 评论(0) 推荐(0)
 
摘要: 1、文件夹建立(必须按照这个规范,文件名和文件夹名必须一致) a、在%TOMCAT_HOME%\webapps下建立一个文件夹,取名MyWebsit b、在MyWebsit文件夹下新建WEB_INF文件夹 c、在WEB_INF文件夹下建立classes文件夹以及web.xml(网络配置文件) 2、开发servlet a、引入servlet-api.jar包(位于tomcat6.0安装路径的lib下) b、实现servlet接口 //这是我的第一个servlet//使用实现servlet接口的方式开发package... 阅读全文
posted @ 2013-10-12 09:04 风言枫语 阅读(502) 评论(0) 推荐(0)
 
摘要: 原创作品,允许转载,转载时请务必以超链接形式标明文章原始出处、作者信息和本声明。否则将追究法律责1.4返璞归真的命令行有一种说法,现代计算机不是靠电力驱动,而是靠“鼠标”。多少应用程序的界面需要移动和点击鼠标来执行的。计算机本来的用意是把人类从反复单调的工作中解放出来,但适得其反,摆在我们身边的残酷现实是我们每个人每天不得不移动和点击鼠标,确保养家糊口的工作能够顺利正确地完成。别叹气,存在另一个世界,那就是命令行,让你暂时远离鼠标。对那些苦哈哈的程序猿来讲,这也许是另一种情调的工作方式。我们突然之间拥有了另一种意想不到的收获,例如我想看看用户目录下的的文件大小,然后按升序排列产生个报表。如果用 阅读全文
posted @ 2013-10-12 09:02 风言枫语 阅读(300) 评论(0) 推荐(0)
 
摘要: Shell文档 ChinaUnix上大神“網中人”总结的Shell十三问,强烈推荐,这本书讲得比较精炼,而且都是一些Shell学习中容易把握不住的一些细节难点。每一问都写得非常精彩。ChinaUnix上,还有个wingger大神整理的Shell基础二十篇。这份文档涉及的内容比较多,我没记错的话应该有很多命令的用法,而且配备实际使用的例子,对初学者帮助甚大。 《Shell脚本专家指南》(文中提到的书和资料下面都有下载的链接)也是一本不可多得的好书。书中都是作者实际工作中的经验总结,你可以从中学到很多其它书上学不到的实践知识。千万不要被专家两个字吓住了,书名的意思是专家给你总结的学习指南。... 阅读全文
posted @ 2013-10-12 09:01 风言枫语 阅读(327) 评论(0) 推荐(0)
 
摘要: 题目:52张扑克,从左到右在平面上排列,按着如下规则处理: 1.按照从左到右的顺序,如果一张牌和左边的第一张或者第三张匹配,就把它放到对应的牌上面。 2.如果可以移动到多个位置,移动到最左端的牌上面。(匹配:花色或者数值相同)分析:数据结构、栈、模拟。对于每叠牌建立一个栈,进行模拟即可。注意:每次只移动每叠牌的最顶上的牌。#include #include #include using namespace std;char Card[54][54][3];int Top[54];int Sum;//记录合并的叠数int match( char* a, char *b... 阅读全文
posted @ 2013-10-12 09:00 风言枫语 阅读(185) 评论(0) 推荐(0)
 
摘要: 面向服务架构的思想在整个软件的架构中已经不是什么新鲜的东西。我简单的认为服务化是模块化的延伸,所以服务化有着和模块化类似的优点和缺点。这里不再讨论这些服务定义服务与服务之间的通信协议(像WSDL等等),我并不认为这是服务化的本质所在。即使Java语言用RMI进行服务与服务之间的通信也仍然不违背服务化的宗旨。一.为什么需要面向服务架构 1.我觉得面向服务的根本好处是便于管理,也是应用大到一定时候的必然产物。这往往和组织架构之间相契合。其实不合理的服务划分也会带来服务之间的混乱。 2.面向服务是一个解耦的过程,松耦合降低了服务之间的依赖,也意味着服务一个服务出现故障的时候不容易引... 阅读全文
posted @ 2013-10-12 08:59 风言枫语 阅读(177) 评论(0) 推荐(0)
 
摘要: 题目:给出一个数列,每次交换相邻数字,求排成递增序的最少交换次数。分析:逆序数。排序最少交换次数:1.相邻交换,为逆序数;随意交换,为总数减环个数。 证明:每次相邻交换时,逆序数减1或者加1,所以最优情况下,逆序数为交换次数下界。 存在性,每次找到逆序对交换即可构造出一种下界。注意:使用long类型即可。#include #include #include using namespace std;long Data[500005];long Save[500005];//利用合并排序求逆序数 long mergesort( int l, int r ){ if ... 阅读全文
posted @ 2013-10-12 08:55 风言枫语 阅读(170) 评论(0) 推荐(0)
上一页 1 ··· 29 30 31 32 33 34 35 36 37 ··· 235 下一页