随笔分类 -  笔试题练习

摘要:#include getNext(char str[],int n, int next[]){ int i, j; i = 1; j = 0; next[0] = -1; next[1] = 0; while(i < n){ if(str[i] == str[j]){ i++; j++; next[i] = j; } else if(j == 0){ i++; next[i] = 0; } ... 阅读全文
posted @ 2014-02-26 16:30 yutoulck 阅读(169) 评论(0) 推荐(0)
摘要:#include int find(int num[], int b, int e){ int temp = num[b]; int i = b; int j = e; while(i temp) j--; if(i b){ kp(num, b, n - 1); } if(n < e){ kp(num, n + 1, e); }}main(){ int i; int num[] = {1, -2, 3, 10, -4, 7, 2, -5,}; kp(num, 0, 7); for(i... 阅读全文
posted @ 2014-02-26 16:09 yutoulck 阅读(185) 评论(0) 推荐(0)
摘要:求和最大的数字组合。findMax(int num[], int n){ int i; int b = 0; int e = 0; int tb = 0; int te = 0; int total = 0; int temp = 0; for(i = 0; i num[i]){ temp = temp + num[i]; te = i; } else{ tb = i; te = i; temp = num[... 阅读全文
posted @ 2014-02-25 19:13 yutoulck 阅读(185) 评论(0) 推荐(0)
摘要:在给定数字范围内,求和为某数的全部组合#include struct Zhan{ int n; int content[100];};ruZhan(struct Zhan* zhan, int x){ (*zhan).content[(*zhan).n] = x; (*zhan).n++;}czZhan(struct Zhan* zhan, int n){ (*zhan).n = n;}printfZhan(struct Zhan* zhan){ int i; for(i = 0; i 0){ ruZhan(zhan, e); ... 阅读全文
posted @ 2014-02-25 15:26 yutoulck 阅读(340) 评论(0) 推荐(0)
摘要:给定排好序的数字,求和为某数的两个数字组合。#include struct Pair{ int f; int s;} ;int find(int num[], int n, int x, struct Pair pairs[]){ int i = 0; int j = n - 1; int m = 0; for(; i x) j--; else{ pairs[m].f = num[i]; pairs[m].s = num[j]; i++; j--; ... 阅读全文
posted @ 2014-02-25 14:54 yutoulck 阅读(209) 评论(0) 推荐(0)
摘要:使用了堆排序,因为没有必要将全部排好序,堆排序恰好符合要求。#include init(int num[], int n){ int h, i; if(n 0){ creatHeap(num, n, h); i--; if((i - 1) / 2 == h) i--; h = (i - 1) / 2;//下一个非叶结点 }}//整理非叶结点的堆creatHeap(int num[], int n, int h){ int temp = num[h];//临时存放数据 int i;//指示叶结点 int... 阅读全文
posted @ 2014-02-25 11:41 yutoulck 阅读(636) 评论(0) 推荐(0)
摘要:根据http://blog.csdn.net/v_JULY_v/article/details/6322882 敲的。//main函数开始main(){ char str[] = "123456"; move(str, 6, 4); printf("%s \n", str);}move(char str[], int length, int x){ fanZhuan(str, 0, length - x - 1); fanZhuan(str, length - x, length - 1); fanZhuan(str, 0, length - 1);}f 阅读全文
posted @ 2014-02-24 20:02 yutoulck 阅读(138) 评论(0) 推荐(0)
摘要:阅读并转自:http://blog.csdn.net/v_JULY_v/article/details/64194662010年中兴面试题编程求解:输入两个整数 n 和 m,从数列1,2,3.......n 中 随意取几个数,使其和等于 m ,要求将其中所有的可能组合列出来。 // 21题递归方法 //copyright@ July && yansha //July、yansha,updated。 #include #include using namespace std; listlist1; void ... 阅读全文
posted @ 2013-11-02 22:26 yutoulck 阅读(292) 评论(0) 推荐(0)
摘要:题目:有一个桶,里面有白球、黑球各100个,人们必须按照以下的规则把球取出来:1、每次从桶里面拿出来两个球;2、如果是两个同色的球,就再放入一个黑球;3、如果是两个异色的球,就再放入一个白球;问:最后桶里面只剩下一个黑球的概率是多少?思路1:找规律 使用(黑球个数, 白球个数)来表示桶中黑球和白球的个数变动,正数表示增加,负数表示减少,根据规则找规律:1、如果每次从桶里面拿出两个白球,则应放入一个黑球:(0, -2) + (1, 0) = (1, -2);2、如果每次从桶里面拿出两个黑球,则应放入一个黑球:(-2, 0) + (1, 0) = (-1, 0);3、如果每次从桶里面拿出一个白球和 阅读全文
posted @ 2013-09-26 20:19 yutoulck 阅读(1101) 评论(0) 推荐(0)
摘要:9月5日,华为2014校园招聘的机试题目通过键盘输入一串小写字母(a~z)组成的字符串。请编写一个字符串压缩程序,将字符串中连续出席的重复字母进行压缩,并输出压缩后的字符串。压缩规则: 1、仅压缩连续重复出现的字符。比如字符串"abcbc"由于无连续重复字符,压缩后的字符串还是"abcbc"。 2、压缩字段的格式为"字符重复的次数+字符"。例如:字符串"xxxyyyyyyz"压缩后就成为"3x6yz"。要求实现函数: void stringZip(const char *pInputStr, l 阅读全文
posted @ 2013-09-26 20:16 yutoulck 阅读(384) 评论(0) 推荐(0)