摘要: Q:一个数组是由一个递减数列左移若干位形成的,比如{4,3,2,1,6,5} 是由{6,5,4,3,2,1}左移两位形成的,在这种数组中查找某一个数。 A:任意将这个数组从中间分开,分成两个数组,则至少有一个数组单调递减,另一个数组则可以由递减数组左移若干位得到,所以我们在二分之后确定界限的时候必须考虑所有情况,即需要查找的数组在哪一个分区里。 首先我们需要判断哪一个分区是单调递减的... 阅读全文
posted @ 2012-06-11 20:57 Cavia 阅读(990) 评论(0) 推荐(0) 编辑
摘要: #include <iostream>using namespace std;//匹配数int num=0;//判断当前n对括号是否匹配bool isMatch(int n,char* bracket){ int left_num=0,right_num=0; for(int i=0;i<2*n;++i) { if(bracket[i]=='l') left_num++; else if(... 阅读全文
posted @ 2012-06-11 19:42 Cavia 阅读(2223) 评论(0) 推荐(0) 编辑