Python实现对任意维数组的的某一维实现快速排序

这篇博客介绍如何使用Python实现对二维数组的某一维度进行快速排序。以输入二维数组nums_arrays=[[1,3],[4,2],[3,5]]为例,通过对第一个维度排序,得到[[1, 3], [3, 5], [4, 2]]的结果。通过定义quickSort函数,实现了排序过程,并保持原始数组对应关系不变。" 80115318,5278933,"Struts迭代器遍历List总结:String, List<String>, Entity, List<Entity>
摘要由CSDN通过智能技术生成

主要想法和快速排序一致,不同的是将某一维度作为索引,该索引位置修改了,则对应的原始数据也按照对应的维度进行修改即可,以下例子为二维数组的第一个维度进行的一个快速排序

输入的nums_arrays

nums_arrays = [[1,3],[4,2],[3,5]]

输出的结果[[1, 3], [3, 5], [4, 2]]

def fuction(nums_array,choose):
    nums = [x[choose] for x in nums_array]
    def quickSort(nums_array,nums,start,end):
        if start < end:
            mid = nums[start]
            left = start+1
            right = end
            while left <= right:
                while left <= right and nums[left] <= mid:
                    left += 1
                while left <= right and nums[right] >= mid:
                    right -= 1
                if left <= right:
                    nums[left],nums[right] = nums[right],nums[left]
                    nums_array[left],nums_array[right] = \

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值