python怎么实现数组排序

例如现在是两个数组,一个数组a是(1,5,2,4,3) 第二数组b对应第一个数组并且为(23,25,27,29,31),就是1对应23;5对应25.现在要对第一个数组排序,排成1,2,3,4,5,同时第二数组对应的值也相应的交换,结果输出23,27,31,29,25。实际数组a和数组b数据量很大,问题是怎么用Python实现

# 合成一个字典
ab = dict(zip(a, b))
# 根据字典的键进行排序(也就是第一个列表);也可以根据第二个列表进行排序。
# 具体是升序还是降序,自己挑着来。
ab_order = sorted(ab.items(), key=lambda x: x[0], reverse=
False)

温馨提示:内容为网友见解,仅供参考
第1个回答  2019-04-25
a = (1, 5, 2, 4, 3)
b = (23, 25, 27, 29, 31)
c = zip(a, b)
d = sorted(c, key=lambda x:x[0])
print(d)

追问

[(1, 23), (2, 27), (3, 31), (4, 29), (5, 25)]
要去掉前面索引,输出(23,27,31,29,25),现在怎么弄呢

追答list1 = [(1, 23), (2, 27), (3, 31), (4, 29), (5, 25)]
list2 = [t[1] for t in list1]
print(list2)

本回答被提问者采纳

python怎么对数组排序?python数组排序方法
首先,Python内置了list对象的.sort()方法,它会直接对列表进行就地排序,不返回任何值,适用于对列表进行原地操作。例如:list_name.sort()另一种是sorted()函数,它接受任意可迭代对象并返回一个新的排序后的列表,不同于.sort(),sorted()会返回一个新的排序后的序列,不会改变原对象:sorted_list ...

python对数组排序并索引其位置
在编程实践过程中,经常需要对数组进行排序,并找到数组中特定元素的位置。这类操作在算法应用中尤为常见。解决此问题主要依赖于两个函数:`index()` 和 `sorted()`。`index()` 用于查找数组中特定值的索引,其语法为 `a.index(num)`,其中 `a` 是数组,`num` 是要查找的值。`sorted()` 则用...

怎样用python将数组里的数从高到低排序
1、python数组排序用python内置的sorted函数就可以实现,sorted()函数中的reverse参数为True时就是逆序排序。具体的步骤是首先打开python编辑器,新建一个python文件:2、在python文件中,首先设置一个用来处理排序的函数,函数只有一个参数A,用来接收传入的数组,之后简单的判断数组不为空,返回判断的结果。...

python 二维数组排序
在Python中,可以使用sorted()函数对二维数组进行排序。以下是一个示例代码:arr = [[3, 2, 1], [6, 5, 4], [9, 8, 7]]sorted_arr = [sorted(sub_arr) for sub_arr in arr]print(sorted_arr)在上面的代码中,我们首先创建一个3x3的二维数组arr。然后,我们使用列表推导式和sorted()...

【Python之选择排序】
选择排序是种常见的排序算法。假设我们要排序的元数据是arr=[3,5,7,1,2],元素总数N等于5。在第一次排序中,我们从整个待排序数组arr中找出最小值1,并将其与序列arr的第一个元素进行交换。此时arr变为[1,5,7,3,2]。接着进行第二次排序,我们从剩余未排序的元素[5,7,3,2]中找出最小值...

在python中
在Python中,排序算法是数据处理中的重要环节。其中,归并排序和插入排序是两种常见的排序方法,它们各有特点。归并排序,也称合并排序,是分治策略的典型应用,通过递归地将数组分成两半,对每一半进行排序,然后合并,其时间复杂度为O(nlog n),具有稳定性。代码示例如下:归并排序:def merge_sort(nums, ...

Python实现十大经典排序算法--python3实现(以及全部的排序算法分类)
我简单的绘制了一下排序算法的分类,蓝色字体的排序算法是我们用python3实现的,也是比较常用的排序算法。一、常用排序算法 1、冒泡排序——交换类排序 1.1 简介 冒泡排序(Bubble Sort)是一种简单直观的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。

python 快速排序实现的具体代码,以及讲解。我是小白还请讲清楚一点,谢...
快速排序:在数组L中选一个数叫支点Pivot,把数组L中所有比支点小的数放在支点的左边;比支点大的数放在支点右边..;然后分别对左、右两个新数组重新各选一个支点,重复之前的排法,直到左、右只剩下一个数不用再分。经过这样的过程后,整个数组L就被从小到大排好了.qsort()是排序的实现。qsort(...

对Python中数组的几种使用方法总结
数组的多级排序 在数组 idea_collect = [[3, 1, 2], [3, 2, 1], [3, 2, 2], [3, 1, 1]] 中, 先按照第二项排列, 再按照第三项倒序排列 可写为:idea_collect.sort(key=lambda x: (x[1], -x[2]))其中, x[1] 代表第二项正序排列, -x[2] 代表第三项倒序排列 排列结果...

排序算法总结(Python实现代码)
本文旨在整理并总结各种排序算法的Python实现,便于复习。以下是主要算法的概述:1. **冒泡排序**:通过不断交换相邻的元素,将较大(或较小)的数逐步“冒”到序列的末尾。时间复杂度最坏情况为O(n^2)。2. **选择排序**:每次从未排序部分找出最小(或最大)元素,放到已排序部分的末尾。复杂度...

相似回答