|
本帖最后由 龙兮 于 2009-9-22 12:28 编辑
1,实现void strtol(char* num_str,char** endptr,int base)函数,此函数的功能是将一个字符串num_str转换成整数。num_str中保存的是待转换的字符串。字符串有8,10,16进制三种形式,保存在base参数中,若base为0,则需要自己判断具体的进制。要判断是否溢出,若为上溢出,返回INT_MAX,若为下溢出,返回INT_MIN。字符串num_str可能存在非法字符,若存在非法字符,返回非法字符前面的转换结果,并将endptr指向第一个非法字符,若没有非法字符,不需要返回endptr。
#注:不能使用任何库函数。
2,从1亿个数中,找出最大的1000个数。效率要尽可能的高,使用的额外空间要尽可能小。
void max_num(int* source_num,int* max_num)
source_num:数组包括所有的1亿个数。
max_num:保存最大的1000个数。
#注:不能使用任何库函数。
3,若对于整数N,在集合{1,2……,N}中找出m个数,使其和等于剩下的N-m个数的和。返回所有可能的组合数。N<10000。
#注:不能使用任何库函数。 |
+10
|