不使用数组找到最大/最小值
创始人
2024-12-29 09:30:24
0次

解决方法1:使用两个变量来保存最大值和最小值

def find_max_min(nums):
    max_value = float('-inf')  # 初始化最大值为负无穷大
    min_value = float('inf')   # 初始化最小值为正无穷大
    
    for num in nums:
        if num > max_value:
            max_value = num  # 更新最大值
        if num < min_value:
            min_value = num  # 更新最小值
        
    return max_value, min_value

解决方法2:使用递归来找到最大值和最小值

def find_max_min(nums):
    if len(nums) == 1:
        return nums[0], nums[0]  # 当只有一个元素时,最大值和最小值都是该元素
    
    if len(nums) == 2:
        return (nums[0], nums[1]) if nums[0] < nums[1] else (nums[1], nums[0])
    
    mid = len(nums) // 2
    max_left, min_left = find_max_min(nums[:mid])  # 递归找到左半部分的最大值和最小值
    max_right, min_right = find_max_min(nums[mid:])  # 递归找到右半部分的最大值和最小值
    
    max_value = max(max_left, max_right)
    min_value = min(min_left, min_right)
    
    return max_value, min_value

注意:以上两种方法都是基于比较的方式来找到最大值和最小值,因此时间复杂度都是O(n),其中n是输入数组的长度。

相关内容

热门资讯

重大通报外挂方法!中至山西麻将... 重大通报外挂方法!中至山西麻将多功能外挂方法,中至山西麻将本来存在有外挂方法1、中至山西麻将免费脚本...
重要通知透视挂app!丹东约战... 重要通知透视挂app!丹东约战麻将多功能透视挂app,丹东约战麻将好像真的有透视挂app1、丹东约战...
今日公布外挂插件!亲邻麻将多功... 今日公布外挂插件!亲邻麻将多功能外挂插件,亲邻麻将原来是真的有外挂插件1、该软件可以轻松地帮助玩家将...
揭秘外挂教程!中至余干麻将多功... 揭秘外挂教程!中至余干麻将多功能外挂教程,中至余干麻将果然真的是有外挂教程1、用户打开应用后不用登录...
揭秘一下辅助软件!星火燎原多功... 揭秘一下辅助软件!星火燎原多功能辅助软件,星火燎原确实有辅助软件1、星火燎原透视辅助软件激活码多个强...
终于懂了透视器技巧!趣玩情怀多... 终于懂了透视器技巧!趣玩情怀多功能透视器技巧,趣玩情怀竟然存在有透视器技巧亲,关键说明,趣玩情怀透视...
盘点一款开挂方法!天天黄石麻将... 盘点一款开挂方法!天天黄石麻将多功能开挂方法,天天黄石麻将切实是有开挂方法天天黄石麻将是不是有人用挂...
玩家爆料辅助器工具!嵘聚多功能... 玩家爆料辅助器工具!嵘聚多功能辅助器工具,嵘聚总是有辅助器工具;玩家爆料辅助器工具!嵘聚多功能辅助器...
玩家亲测辅助app!老友汇多功... 玩家亲测辅助app!老友汇多功能辅助app,老友汇总是是真的有辅助app1、上手简单,内置详细流程视...
解密关于透视挂软件!情怀宜春麻... 解密关于透视挂软件!情怀宜春麻将多功能透视挂软件,情怀宜春麻将切实有透视挂软件1、玩家可以在情怀宜春...