随笔分类 -  算法专题

摘要:题目描述:编写一个DelSpace函数,要求声明为int DelSpace(char* str);功能是把传入的str参数里的字符串的空格全部删除,输入:按参数传递,传递的字符串最大串长是1000000个字符输出:按参数返回,直接把结果写入原本的字符串(char* str)即可函数执行成功则应当返回非0值样例输入:123 456 abca b c 3 4 5样例输出:123456abcabc345比较基础,但实际上你写一写,不一定一次成功!上参考代码:int DelSpace(char* str){ assert(str != NULL); char *tmpStr = str; while 阅读全文
posted @ 2011-11-23 17:02 Haven 阅读(221) 评论(0) 推荐(0)
摘要:题目描述:编写一个Reverse函数,声明类似unsigned Reverse(unsigned);要求参数只有一个32bit非负整数,同样返回一个32bit整数,但数位反转。输入:按参数传递,一个32bit非负数,且最高最低位不为0输出:按返回值输出难度指数:☆代码实现1:unsigned Reverse(unsigned num){unsigned result = 0;while(num &... 阅读全文
posted @ 2009-05-19 10:12 Haven 阅读(307) 评论(0) 推荐(1)
摘要:问题描述在线性代数里有这么一个概念:有一个数列,如21543,1的前面有1个数比它要大,4的前面有1个数比它大,3的前面有2个数比它大,总数是1+1+2=4所以21543的逆序数就是4输入多组测试数据,第一行是n(1<=n<=1e7),下一行是一个长度为n的字符串输出算出这个字符串的逆序数(ASCII比较)样例输入521543312366543214acdb6abcABC42211样例... 阅读全文
posted @ 2009-05-18 15:37 Haven 阅读(1138) 评论(0) 推荐(0)
摘要:完全数又称为完美数,因为它有如下特别的性质:例如6,它有约数1, 2, 3(不算它自身在内),这三个约数的和刚好也是它本身。现在就要你找出这些数输入多组测试数据,一组里只有一行,就是一个n(1<=n<=5e18)输出1到n的所有完全数,一个数占一行样例输入:30样例输出:628代码实现如下:[代码]点评:这是一个一般实现的思路。有更好的算法,以后再研究吧。 阅读全文
posted @ 2009-05-16 20:47 Haven 阅读(287) 评论(0) 推荐(0)