题目描述:输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。输入:每个输入文件包含一组测试案例。对于每个测试案例,第一行输入一个n,代表该数组中数字的个数。接下来的一行输入n个整...
分类:
其他好文 时间:
2014-06-07 05:59:56
阅读次数:
322
我做这道题,是先用二分查找找到该数字,而后再遍历其前后相同的数字,统计次数。这种做法的平均时间复杂度为O(logn),最坏情况下为O(n),剑指offer上给的思路是两次用二分查找分别找到该数字第一次和最后一次出现的位置,这样的时间复杂度平均和最坏都是O(logn),稍好些》
下面贴上我按照自己思路写的代码:...
分类:
其他好文 时间:
2014-06-07 01:19:45
阅读次数:
197
题目描述:
JOBDU最近来了一个新员工Fish,每天早晨总是会拿着一本英文杂志,写些句子在本子上。同事Cat对Fish写的内容颇感兴趣,有一天他向Fish借来翻看,但却读不懂它的意思。例如,“student. a am I”。后来才意识到,这家伙原来把句子单词的顺序翻转了,正确的句子应该是“I am a student.”。Cat对一一的翻转这些单词顺序可不在行,你能帮助他么?
输入:
每个测试案例为一行,表示一句英文句子。
我们保证一个句子的单词数不会超过600,每个单词的长度也不会超过30。但是需要注...
分类:
其他好文 时间:
2014-06-05 10:52:19
阅读次数:
202
这道题之前在Cracking the Coding interview上做过类似的,一样的三次反转,即可得到,时间复杂度为O(n),空间复杂度为O(1)。这道题在九度OJ上测试,主要要考虑移动的位数大于字符串长度时的情况,取余即可。...
分类:
其他好文 时间:
2014-06-05 09:34:36
阅读次数:
236
??
Good News! Utopia Polycom begins to offer a whole new service, Conference Call. This new service enables three users to make phone calls at the same time and talk to each other. It's very useful w...
分类:
其他好文 时间:
2014-06-05 02:12:20
阅读次数:
372
题目:输入两个字符串,从第一字符串中删除第二个字符串中所有的字符。例如,输入”They are students.”和”aeiou”,则删除之后的第一个字符串变成”Thy r stdnts.”。
这里主要要分析两个方面:
1、如何判断那些字符是需要删除的字符。同很多字符串问题一样,可以开辟一个哈希数组,全部初始化为false,将第二个字符串中字符对应的映射位置置为ture,表示这些位置对应的字符在第一个字符串中需要删除。
2、关于删除字符的操作,每次删除一个,而后把后面的元素均左移一...
分类:
其他好文 时间:
2014-06-05 01:47:12
阅读次数:
196
题目描述:输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。(hint:
请务必使用链表。)输入:输入可能包含多个测试样例,输入以EOF结束。对于每个测试案例,输入的第一行为两个整数n和m(0next == NULL){
res->next =...
分类:
其他好文 时间:
2014-05-31 02:41:46
阅读次数:
372
题目描述:输入一个链表,反转链表后,输出链表的所有元素。(hint :
请务必使用链表)输入:输入可能包含多个测试样例,输入以EOF结束。对于每个测试案例,输入的第一行为一个整数n(0next也就是p1来改变p1元素的位置,代码如下:Node
*p = head->next; Node *p1...
分类:
其他好文 时间:
2014-05-30 21:55:06
阅读次数:
349
题目描述:输入一个链表,输出该链表中倒数第k个结点。(hint:
请务必使用链表。)输入:输入可能包含多个测试样例,输入以EOF结束。对于每个测试案例,输入的第一行为两个整数n和k(0#include typedef
struct node{ int number; struct nod...
分类:
其他好文 时间:
2014-05-30 00:29:13
阅读次数:
325
题目描述:我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?输入:输入可能包含多个测试样例,对于每个测试案例,输入包括一个整数n(1long
long arr[71] = {0,1,2};void createArr(vo...
分类:
其他好文 时间:
2014-05-28 01:23:49
阅读次数:
305