文档章节

输出字符串中出现次数最多的字符

ricardohn
 ricardohn
发布于 2016/05/10 10:38
字数 258
阅读 26
收藏 0

题目:输出给定字符串中出现次数最多 的字符(不论大小写),字符串中可能存在大小写,当存在出现次数一样的字符,此时按照字符在字母表中的顺序输出位于字母表前面的字符。

import string
def checkio(text):
    alpha=['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z']
    #replace this for solution
    #最简洁的解决代码为一下注释的三行即可
    #text=text.lower()
    #alpha=string.ascii_lowercase
    #return max(alpha,key=text.count)

    max_str=[0,0]
    for i in range(26):
        if text.lower().count(alpha[i]) > max_str[1] :
             max_str[0]=alpha[i]
             max_str[1]=text.lower().count(alpha[i])
    return max_str[0]


if __name__ == '__main__':
    #These "asserts" using only for self-checking and not necessary for auto-testing
    assert checkio("Hello World!") == "l", "Hello test"
    assert checkio("How do you do?") == "o", "O is most wanted"
    assert checkio("One") == "e", "All letter only once."
    assert checkio("Oops!") == "o", "Don't forget about lower case."
    assert checkio("AAaooo!!!!") == "a", "Only letters."
    assert checkio("abe") == "a", "The First."
    print("Start the long test")
    assert checkio("a" * 9000 + "b" * 1000) == "a", "Long."
    print("The local tests are done.")

 

© 著作权归作者所有

共有 人打赏支持
ricardohn
粉丝 1
博文 76
码字总数 30236
作品 0
成都
私信 提问
百练 2742: 统计字符数 之 Java 解答

http://bailian.openjudge.cn/practice/2742/ 描述 判断一个由a-z这26个字符组成的字符串中哪个字符出现的次数最多 输入 第1行是测试数据的组数n,每组测试数据占1行,是一个由a-z这26个字符...

圣洁之子
2016/07/20
25
0
grep系的介绍及正则表达式详解

文本处理工具: 全屏编辑器:vim,nano 行编辑器: 文本处理三剑客:grep系列,sed,awk grep系列:grep,egrep,fgrep;统称为文件搜索工具;基于PATTERN(模式)对于给定的文本文件进行模糊搜...

花花很漂漂
2017/11/16
0
0
python 根据两个字段排序, 一个升序, 一个降序

hackerrank 中有这样一个题: 给定一个字符串, 输出出现次数最多的前三个字符, 若两字符出现次数相同, 则按字典顺序排列. # 样例输入 aabbbccde 样例输出 b 3a 2c 2 就是先将第二字段降序排序...

好铁
2016/03/04
204
0
grep、egrep命令及正则表达式

grep系: grep:Global search Regular Expression and Print out the line。 利用正则表达式进行全局搜索并将匹配到的行显示出来; 格式: grep [OPTIONS] PATTERN [FILE...] grep [OPTIONS...

long44
2017/11/17
0
0
正则表达式grep的一些操作

在我们进行编辑的时候,我们会用到vim和nano这样的的全屏编辑器,这样的编辑器顾名思义会占据我们的屏幕,来进行编辑。当然,有全屏的编辑器,就有不是全屏的文本编辑器,叫做行编辑器,对于...

刘景宇
2017/11/17
0
0

没有更多内容

加载失败,请刷新页面

加载更多

MySQL自增属性auto_increment_increment和auto_increment_offset

MySQL的系统变量或会话变量auto_increment_increment(自增步长)和auto_increment_offset(自增偏移量)控制着数据表的自增列ID。 mysql> show tables;Empty set (0.00 sec)mysql> CREATE TA......

野雪球
12分钟前
0
0
OSChina 周三乱弹 —— 有一天考拉麻麻拉肚子了

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @瘟神灬念 :分享周汇洋的单曲《Man Srae(曼斯拉之舞)》:美滋滋。。。。 手机党少年们想听歌,请使劲儿戳(这里) 我听了一下 赶紧关了, ...

小小编辑
今天
68
5
oh-my-zsh 自定义

GitHub 地址 基于 oh-my-zsh 的自定义配置,增加了一些个人常用插件与皮肤。 采用的是 git submodule 来维护,包括 oh-my-zsh,之所以这么搞,主要是手头有多台 linux 需要维护, 每台机器、...

郁也风
今天
7
0
Docker安装踩坑:E_FAIL 0x80004005的解决

参考 菜鸟教程--Windows Docker 安装 http://www.runoob.com/docker/windows-docker-install.html 官方文档-Install Docker Toolbox on Windows https://docs.docker.com/toolbox/toolbox_in......

karma123
今天
6
0
js垃圾回收机制和引起内存泄漏的操作

JS的垃圾回收机制了解吗? Js具有自动垃圾回收机制。垃圾收集器会按照固定的时间间隔周期性的执行。 JS中最常见的垃圾回收方式是标记清除。 工作原理:是当变量进入环境时,将这个变量标记为“...

Jack088
昨天
18
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部