开发者

Python实现指定数组下标值正序与倒序排序算法功能举例

目录
  • 前言
  • 1、知识点
  • 2、数列和元组
    • 2.1、错误遍历方式
    • 2.2、正确遍历方式
    • 2.3、下标方式遍历
    • 2.4、enumerate方式遍历
    • 2.5、逆序技巧
  • 3、自定义排序规则
    • 4、自定义排序编码
      • 4.1、函数命名
      • 4.2、定义变量
      • 4.3、实现效果
    • 5、常见排序算法
      • 总结:

        前言

        在本javascript次python文章中,主要通过定义一个排序方法,实现一组数列能够按照另一组数列指定的位置进行重新排序输出,默认正序排序,可通过True表示逆序输出

        1、知识点

        ⭐️在实现自定义排序前,先来了解下基本的知识点和简单举例!

        编号语言或插件修饰符说明
        1pythondef定义方法关键词
        2pythonlist()数列,就是数组,方括号括起来值,遍历只能获取到值
        3pythontule()元组,括号括起来值,遍历可获取到值和下标
        4pythonenumerate()函数用于遍历序列中的元素以及它们的索引
        5pythonlen()统计长度
        6python逆序小技巧[1,2,3,4,5][::-1]

        2、数列和元组

        2.1、错误遍历方式

        list,数列,结合for循环遍历时,只能遍历值,无法获取到下标,如下方式会报错

        定义变量并赋值:list=['python','is','very','good','code']

        Python实现指定数组下标值正序与倒序排序算法功能举例

        2.2、正确遍历方式

        对于以为数组,for循环遍历,直接就是值,而不是下标

        Python实现指定数组下标值正序与倒序排序算法功能举例

        2.3、下标方式遍历

        可以获取数组长度,然后结合for和range通过下标0开始进行遍历,如下

        Python实现指定数组下标值正序与倒序排序算法功能举例

        代码如下

        #!/usr/bin/python3
        # -*- coding: utf-8 -*-
        # 2023-02-16
        
        list=['python','is','very','good','code']
        
        listLength=len(list)
        for index in range(listLength):
            value=list[index]
            print(f'下标={index},值={value}')
        

        2.4、enumerate方式遍历

        还有一种方式就是将数列和元组通过enumerate方式遍历

        格式,注意顺序,第一个是索引,第二个参数是值:

        #!/usr/bin/python3
        # -*- coding: utf-8 -*-
        # 2023-02-16
        
        list=['python','is','very','good','code']
        
        for index,value in enumerate(list):
           www.devze.com print(f'下标={index},值={value}')
        

        Python实现指定数组下标值正序与倒序排序算法功能举例

        2.5、逆序技巧

        数列逆序输出小技巧,-1表示从最后一个值反序输出

        [1,2,3,4,5][::-1]

        Python实现指定数组下标值正序与倒序排序算法功能举例

        #!/usr/bin/python3
        # -*- coding: utf-8 -*-
        # 2023-02-16
        
        list=['python','is','very','good','code']
        listNew=list[::-1]
        print(f'正序输出={list}\r\n')
        print(f'逆序输出={listNew}\r\n')
        

        3、自定义排序规则

        1)按照order的元素作为lst对应位置的元素的应该顺序

        2)并按照该顺序重新排列lst,返回排序后的结果列表

        3)支持逆序

        4、自定义排序编码

        4.1、函数命名

        定义函数名为,sort_by

        def sort_by(lst:list, order:list, reverse=False)->list:
            pass
        

        4.2、定义变量

        定义两组list数列如下

        list=['python','is','ver编程客栈y','good','code']
        numValue=[19,95,11,29,5,26,3,http://www.devze.com6]
        

        4.3、实现效果

        通过上面的一些知识点了解,即可完成数列的自定义正序排序和逆序排序

        通过指定下标进行输出,并可设置逆序输出

        Python实现指定数组下标值正序与倒序排序算法功能举例

        完整代码如下

        #!/usr/bin/python3
        # -*- coding: utf-8 -*-
        # 2023-02-16
        import sys 
        
        def sort_by(lst:list, order:list, reve开发者_JAVA学习rse=False) -> list:
            pass
            new_list = []
            for i in range(len(lst)):
                new_list.append(i)
            for index,value in enumerate(lst):
                position = order[index] - 1
                new_list[position] = value
        
            if reverse==True:
                return new_list[::-1]
            else:
                return new_list
        
        list=['python','is','very','good','code']
        numValue=[3,2,1,5,4]
        
        print(sort_by(list, numValue)) 
        
        print(sort_by(list, numValue, True)) 
        

        5、常见排序算法

        编号算法名称说明
        1插入排序插入到已经排好序的有序表中
        2选择排序选最小或最大放到排序位置
        3冒泡排序重复地走访过要排序的元素列
        4归并排序将已有序的子序列合并,得到完全有序的序列
        5快速排序通过分界值将数组分成左右两部分
        6希尔排序是插入排序的一种又称“缩小增量排序

        Python实现指定数组下标值正序与倒序排序算法功能举例

        总结:

        温故而知新,入门开发语言,就是需要不断的把基础打稳,才能更好的进阶!

        到此这篇关于Python实现指定数组下标值正序与倒序排序算法功能的文章就介绍到这了,更多相关Python指定数组下标值正序与倒序排序内容请搜索我们以前的文章或继续浏览下面的相关文章希www.devze.com望大家以后多多支持我们!

        0

        上一篇:

        下一篇:

        精彩评论

        暂无评论...
        验证码 换一张
        取 消

        最新开发

        开发排行榜