如何根据整数值对二维数组排序并保持关联P值同步?
按整数升序排序二维数组并保持P值同步
要实现将二维数组中的整数值升序排序,同时让对应的P值同步移动,核心是指定排序的依据为每个子数组的整数元素。以Python为例,使用内置的sorted()函数,通过key参数指定排序规则即可完成:
输入示例
[['P1', 168], ['P2', 146], ['P3', 116], ['P4', 113], ['P5', 113], ['P6', 90], ['P7', 28]]
实现代码
arr = [['P1', 168], ['P2', 146], ['P3', 116], ['P4', 113], ['P5', 113], ['P6', 90], ['P7', 28]] sorted_arr = sorted(arr, key=lambda x: x[1]) print(sorted_arr)
输出结果
[['P7', 28], ['P6', 90], ['P4', 113], ['P5', 113], ['P3', 116], ['P2', 146], ['P1', 168]]
说明
sorted()函数返回新的排序后数组,不会修改原数组;key=lambda x: x[1]指定以每个子数组的第二个元素(整数值)作为排序依据,实现升序排序;- Python的
sorted()是稳定排序,当整数值相同时(如示例中的P4和P5),会保留它们在原数组中的相对顺序,与输出示例一致。
内容的提问来源于stack exchange,提问作者Jarod
相关产品推荐
相关产品推荐

