欢迎光临
我们一直在努力

找第二大数字

"""
第二大
给定一个混合字符串,找出字符串中第二大的数字
如果不存在第二大的数字,返回-1.
混合字符串由小写英文字母和数字组成。
"""
def second_number(s):
    """
    寻找字符串s中第二大的数字。

    参数:
    s (str): 输入的字符串,可能包含数字和非数字字符。

    返回:
    int: 字符串s中第二大的数字,如果不存在则返回-1。
    """
    # 初始化两个变量,用于记录第一大和第二大的数字
    first = -1
    second = -1
    # 遍历字符串中的每个字符
    for char in s:
        # 判断字符是否为数字
        if char.isdigit():
            num = int(char)
            # 如果当前数字大于已记录的第一大数字
            if num > first:
                # 将原第一大数字更新为第二大数字
                second = first
                # 更新新的第一大数字
                first = num
            # 如果当前数字大于已记录的第二大数字且不等于第一大数字
            elif num > second and num != first:
                # 更新第二大数字
                second = num
    # 返回第二大数字
    return second

print(second_number('a1b2c3d4e5'))
赞(0) 打赏
未经允许不得转载:创想未来 » 找第二大数字

评论 抢沙发

评论前必须登录!

 

更好的Python学习

支持快讯、专题、百度收录推送、人机验证、多级分类筛选器,适用于垂直站点、科技博客、个人站,扁平化设计、简洁白色、超多功能配置、会员中心、直达链接、文章图片弹窗、自动缩略图等...

联系我们联系我们

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续提供更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫

微信扫一扫

登录

找回密码

注册