2013年11月30日
摘要: 剑指Offer - 九度1521 - 二叉树的镜像2013-11-30 23:32题目描述:输入一个二叉树,输出其镜像。输入:输入可能包含多个测试样例,输入以EOF结束。对于每个测试案例,输入的第一行为一个整数n(0 4 using namespace std; 5 6 const int MAXN = 1005; 7 int a[MAXN][4]; 8 int n; 9 int r; 10 bool first_node; 11 12 void myswap(int &a, int &b) 13 { 14 a ^= b ^= a ^= b; 15 } 16 17 v... 阅读全文
posted @ 2013-11-30 23:38 zhuli19901106 阅读(249) 评论(0) 推荐(0)
摘要: 剑指Offer - 九度1520 - 树的子结构2013-11-30 22:17题目描述:输入两颗二叉树A,B,判断B是不是A的子结构。输入:输入可能包含多个测试样例,输入以EOF结束。对于每个测试案例,输入的第一行一个整数n,m(1 4 using namespace std; 5 6 const int MAXN = 1005; 7 int a[MAXN][3]; 8 int b[MAXN][3]; 9 int c[MAXN]; 10 int na, nb; 11 int ra, rb; 12 13 bool is_subtree(const int a[][3], con... 阅读全文
posted @ 2013-11-30 22:31 zhuli19901106 阅读(306) 评论(0) 推荐(0)
摘要: 剑指Offer - 九度1519 - 合并两个排序的链表2013-11-30 22:04题目描述:输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。(hint: 请务必使用链表。)输入:输入可能包含多个测试样例,输入以EOF结束。对于每个测试案例,输入的第一行为两个整数n和m(0 4 using namespace std; 5 6 struct Node{ 7 int val; 8 struct Node *next; 9 Node(int _val = 0): val(_val), next(NULL){} 1... 阅读全文
posted @ 2013-11-30 22:05 zhuli19901106 阅读(312) 评论(0) 推荐(0)
摘要: 剑指Offer - 九度1518 - 反转链表2013-11-30 03:09题目描述:输入一个链表,反转链表后,输出链表的所有元素。(hint : 请务必使用链表)输入:输入可能包含多个测试样例,输入以EOF结束。对于每个测试案例,输入的第一行为一个整数n(0 4 using namespace std; 5 6 struct Node{ 7 int val; 8 struct Node *next; 9 Node(int _val): val(_val), next(NULL){}10 };11 12 Node *reverse_list(Node *head)1... 阅读全文
posted @ 2013-11-30 03:16 zhuli19901106 阅读(316) 评论(0) 推荐(0)
摘要: 剑指Offer - 九度1517 - 链表中倒数第k个结点2013-11-30 02:57题目描述:输入一个链表,输出该链表中倒数第k个结点。(hint: 请务必使用链表。)输入:输入可能包含多个测试样例,输入以EOF结束。对于每个测试案例,输入的第一行为两个整数n和k(0”进行指诊检查,确保不发生内存错误。野指针是严重错误,面试里敢犯这等错误的话,估计Offer也就无缘了。 1 // 651911 zhuli19901106 1517 Accepted 点击此处查看所有case的执行结果 1552KB 1018B 100MS 2 // 2013111... 阅读全文
posted @ 2013-11-30 03:06 zhuli19901106 阅读(255) 评论(0) 推荐(0)
摘要: 剑指Offer - 九度1516 - 调整数组顺序使奇数位于偶数前面2013-11-30 02:17题目描述:输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。输入:每个输入文件包含一组测试案例。对于每个测试案例,第一行输入一个n,代表该数组中数字的个数。接下来的一行输入n个整数。代表数组中的n个数。输出:对应每个测试案例,输入一行n个数字,代表调整后的数组。注意,数字和数字之间用一个空格隔开,最后一个数字后面没有空格。样例输入:51 2 3 4 5样例输出:1 3 5 2 阅读全文
posted @ 2013-11-30 02:56 zhuli19901106 阅读(256) 评论(0) 推荐(0)
摘要: 剑指Offer - 九度1515 - 打印1到最大的N位数2013-11-30 01:11题目描述:给定一个数字N,打印从1到最大的N位数。输入:每个输入文件仅包含一组测试样例。对于每个测试案例,输入一个数字N(1 4 using namespace std; 5 6 int main() 7 { 8 int i; 9 int n, N;10 11 while(scanf("%d", &n) == 1){12 N = 1;13 for(i = 0; i < n; ++i){14 N *= 10;15 ... 阅读全文
posted @ 2013-11-30 01:19 zhuli19901106 阅读(346) 评论(0) 推荐(0)
摘要: 剑指Offer - 九度1514 - 数值的整数次方2013-11-30 00:49题目描述:给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。输入:输入可能包含多个测试样例。对于每个输入文件,第一行输入一个整数T,表示测试案例的数目,接下来的T行每行输入一个浮点数base和一个整数exponent,两个数中间用一个空格隔开。输出:对应每个测试案例,输出一个浮点数代表答案,保留两位小数即可。样例输入:51.0 100.0 -51.0 01.2 52.0 -1样例输出:1.00e+00fINF1.00e+00f2.49e+00f5.00 阅读全文
posted @ 2013-11-30 01:06 zhuli19901106 阅读(331) 评论(0) 推荐(0)