社区
C语言
帖子详情
好久没来了,问个简单的问题
advancejar
2006-08-06 11:12:58
11223344
123455678
1.有N行数字,长度不定,我取其中一行(这个就当完成了),
然后判断这行数字(假如说是:11223344)包含的不同数字有几个?应该是4个
如果是123455678则是8个数字
先问这个,以后还有其他问题,呵呵
由于涉及到处理内容很多,所以想寻找最优的算法,谢谢
...全文
222
8
打赏
收藏
好久没来了,问个简单的问题
11223344 123455678 1.有N行数字,长度不定,我取其中一行(这个就当完成了), 然后判断这行数字(假如说是:11223344)包含的不同数字有几个?应该是4个 如果是123455678则是8个数字 先问这个,以后还有其他问题,呵呵 由于涉及到处理内容很多,所以想寻找最优的算法,谢谢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lj860603
2006-08-07
打赏
举报
回复
刚我也只想到先排序然后再计数。
看了xddzccn(一个人旅行)的代码,算法太漂亮了! ^_^
du51
2006-08-07
打赏
举报
回复
unique
size
cunsh
2006-08-07
打赏
举报
回复
用c++stl的set呀
chenhu_doc
2006-08-07
打赏
举报
回复
先排序,再计数!
xddzccn
2006-08-07
打赏
举报
回复
小弟不懂算法,写了一个自己想的,不知道什么叫做算法的复杂度,请指教!
谢谢!
main()
{
int a[10]={0};
int i;
int n=0;
char ch_a[80];
printf("please input a number");
gets(ch_a);
for(i=0; i<strlen(ch_a); i++)
{
ch_a[i]=ch_a[i]-'0';
a[ch_a[i]]++;
}
for(i=0;i<10;i++)
{
if(a[i]!=0)n++;
}
printf("the number is %d",n);
}
advancejar
2006-08-07
打赏
举报
回复
数字第一个不为0,其他数字可以是0
数字是不排序的,乱序.
jixingzhong
2006-08-07
打赏
举报
回复
#include <stdio.h>
#include <stdlib.h>
int main()
{
int num=12345678;
char str[20];
int n[10]={0}, i, count=0;
sprintf(str, "%d", num);
for(i=0; i<strlen(str); i++)
{
n[ str[i]-'0' ]++;
if( n[ str[i]-'0' ] == 1 )
count++;
}
printf("There are %d different numbers in the num %d\n\n", count, num);
system("PAUSE");
return 0;
}
fflush
2006-08-06
打赏
举报
回复
你取出来的数字是排序的吗,如果是的,直接遍历一次就可以找到有几个不同的数字;如果不是排序的,比较快的办法是用一个辅助数组Count[10]来对数字0-9来进行计数,那么,计数值不为0的数字的个数就是不同的数字的个数
以上两种情况的时间复杂度都是O(M),M为一行中元素的个数
BAT程序员面试必问之:《项目中解决过哪些复杂的
问题
?》(标准回答模板来了)
面试官都爱问项目中解决过哪些
问题
?希望我这个回答能帮助到你。
概率论
问题
_生日
问题
第一次遇到这个
问题
是高中看一个不知道什么知识点(反正和高考没关系),当时只是看懂了,却不知道有什么用。 比较好的实践方法就是像我的概率论习题课老师(如果没记错,是个女的吧)喊一堆人上去写自己的生日,...
分布式 - 如何解决消息重复,保证消息顺序
问题
不啰嗦,我们直接开始! 引言 我在《项目中为什么要使用消息队列》...那么
问题
来了,想象一下,积分系统收到同一个用户同一个订单两条相同的消息会怎样?积分会被加两遍吗?针对这个
问题
,面试官又开始一轮三连问,你
[面试问答] 面试常问的40个
问题
附带经典答案!
以上这些都是很常见的面试
问题
, 但是应届毕业生在回答这些
问题
的时候, 往往是侃侃而谈却未能获得面试官的认同。究其原因, 有的是因为申请人不明白面试官这样提问的目的, 也有的是因为大学生并不真正了解自己所...
方格路径
问题
升级之路
棋盘还有话要说一个
简单
的
问题
问从一个横边长为m,竖边长为n方格棋盘的一个角走到对角点的最短路径共有多少种方法?这个
问题
应该会有很多人见到过,想明白的话这也是一个很
简单
的
问题
,但是如果在这个
问题
上进行一点...
C语言
69,371
社区成员
243,081
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章