琉璃年华485 2022-11-27 10:43 采纳率: 100%
浏览 2
已结题

关于#python#的问题:最大的元素与第一个与元素交换,但我只看到他在比较array【0】与其他元素,主要就是max—min(array)这个函数没有看懂,有没有朋友帮我解读一下

x=0
def max_min(array):
    max=min=0
    for i in range(1,len(array)-1):
        x=i
        if array[x]>array[max]:
            max=x
        elif array[x]<array[min]:
            min=x
        k=max
        y=min
    array[9],array[y]=array[y],array[9]
    array[0],array[k]=array[k],array[0]
def outp(numbers):
    for i in range(0,len(numbers)):
        print(numbers[i])
array=[13,37,59,97,83,72,61,6,48,25]
max_min(array)
outp(array)

习题册上的,要求输入的数组,最大的元素与第一个与元素交换,最小的与最后一个交换,但我只看到他在比较array【0】与其他元素,主要就是max—min(array)这个函数没有看懂,有没有朋友帮我解读一下,谢谢

  • 写回答

1条回答 默认 最新

  • 谢玄. 2022-11-27 14:00
    关注
    def max_min(array):
        # 令 max 和 min 的索引都为 0
        max=min=0
        # 循环遍历后面的数 找到最大数 和 最小数 的索引
        for i in range(1,len(array)-1):
            if array[i]>array[max]:
                max=i
            elif array[i] < array[min]:
                min=i
        # 最小数 和 索引 9  换位置
        array[9],array[min]=array[min],array[9]
        # 最大数 和 索引 0 换位置
        array[0],array[max]=array[max],array[0]
    
    def outp(numbers):
        for i in range(0,len(numbers)):
            print(numbers[i])
    array=[13,37,59,97,83,72,61,6,48,25]
    max_min(array)
    outp(array)
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 12月5日
  • 已采纳回答 11月27日
  • 创建了问题 11月27日

悬赏问题

  • ¥15 为什么apriori的运行时间会比fp growth的运行时间短呢
  • ¥15 帮我解决一下膳食平衡的线性规划模型的数据实例
  • ¥40 万年历缺少农历,需要和阳历同时显示
  • ¥250 雷电模拟器内存穿透、寻基址和特征码的教学
  • ¥200 比特币ord程序wallet_constructor.rs文件支持一次性铸造1000个代币,并将它们分配到40个UTXO上(每个UTXO上分配25个代币),并设置找零地址
  • ¥15 关于Java的学习问题
  • ¥15 如何使用chatgpt完成文本分类任务?
  • ¥15 已知速度v关于位置s的等式,怎么转化为已知位置求速度v的等式
  • ¥15 我有个餐饮系统,用wampserver把环境配置好了,但是后端的网页却进去,是为什么,能不能帮远程一下?
  • ¥15 R运行没有名称为"species"的插槽对于此对象类"SDMmodelCV"