免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: teebye
打印 上一主题 下一主题

算法题哦 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-03-18 12:09 |显示全部楼层 |倒序浏览
题来啦,题来啦,




如何判断一个字符串里面是否有字符占了一半或以上?

看谁实现的聪明  


好吧好吧,外星人是未知的,所以题目现在改成这样了

统计一个字符串里面出现次数最多的字符


[ 本帖最后由 teebye 于 2009-3-18 15:54 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2009-03-18 14:13 |显示全部楼层
实现的不够聪明

论坛徽章:
0
3 [报告]
发表于 2009-03-18 15:29 |显示全部楼层
原帖由 zhenglxd 于 2009-3-18 14:25 发表

不明白聪明的涵义是什么

字符窜又不是数字
又不能用于数学运算
哪来的算法

而且字符窜 包含的范围太大了,什么方法叫 聪明?


我以为,聪明就是要用外星人的思维方式去思考

论坛徽章:
0
4 [报告]
发表于 2009-03-19 10:56 |显示全部楼层
原帖由 hitsubunnu 于 2009-3-19 10:29 发表



use List::Util qw(max);

my $str = 'hellooloooooo';
my (%h,%f);

$f{++$h{$_}}=$_ for split //,$str;

print $f{max keys %f};


看不懂perl的,不妨看看ruby怎么实现的


      def count(a)
        result =[]

        a.uniq.each do|x|
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;result << [x,a.grep(x).length]
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;result.max { |a, b| a[1]<=>b[1] }
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;s = "aadddeegggggg"
str = s.scan(/w{1}/)
p count(str)
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP