Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用python对2D数组进行气泡排序_Python_Arrays_Python 3.x_Quicksort_Bubble Sort - Fatal编程技术网

如何使用python对2D数组进行气泡排序

如何使用python对2D数组进行气泡排序,python,arrays,python-3.x,quicksort,bubble-sort,Python,Arrays,Python 3.x,Quicksort,Bubble Sort,我有一份清单,是2018年NHL球员统计数据的总结。我想用pts对它们进行排序,pts是使用bubble的第7个值。我知道python上的内置排序函数,但我更愿意使用冒泡排序,甚至是快速排序。有人能帮忙吗 [['A.J. Greer', 'COL', 'LW', '15', '1', '1', '2', '14', '9', '20', '5'], ['Aaron Ekblad', 'FLA', 'D', '82', '13', '24', '37', '47', '180', '114', '

我有一份清单,是2018年NHL球员统计数据的总结。我想用pts对它们进行排序,pts是使用bubble的第7个值。我知道python上的内置排序函数,但我更愿意使用冒泡排序,甚至是快速排序。有人能帮忙吗

[['A.J. Greer', 'COL', 'LW', '15', '1', '1', '2', '14', '9', '20', '5'], ['Aaron Ekblad', 'FLA', 'D', '82', '13', '24', '37', '47', '180', '114', '88'], ['Adam Clendening', 'CLS', 'D', '4', '0', '0', '0', '0', '3', '1', '3'], ['Adam Cracknell', 'FA', 'C', '2', '0', '0', '0', '0', '3', '6', '0'], ['Adam Erne', 'DET', 'LW', '65', '7', '13', '20', '40', '70', '159', '26'], ['Adam Gaudette', 'VAN', 'C', '56', '5', '7', '12', '18', '55', '48', '15']]
这就是我目前所做的:

def sortByPoints(stats):

    lengthOfstats = len(stats) - 1
    for i in range(lengthOfstats):
        for j in range(lengthOfstats - i):
            if stats[j] < stats[j + 1]:
                stats[j], stats[j + 1] = stats[j + 1], stats[j]

    return stats

print(sortByPoints(readStatsFromFile()))
def排序点(统计):
lengthOfstats=len(stats)-1
对于范围内的i(长度状态):
对于范围内的j(长度状态-i):
如果统计数据[j]
创建气泡排序,该排序可以根据子数组的索引对嵌套数组进行排序

修改

测试

arr = [['A.J. Greer', 'COL', 'LW', '15', '1', '1', '2', '14', '9', '20', '5'], ['Aaron Ekblad', 'FLA', 'D', '82', '13', '24', '37', '47', '180', '114', '88'], ['Adam Clendening', 'CLS', 'D', '4', '0', '0', '0', '0', '3', '1', '3'], ['Adam Cracknell', 'FA', 'C', '2', '0', '0', '0', '0', '3', '6', '0'], ['Adam Erne', 'DET', 'LW', '65', '7', '13', '20', '40', '70', '159', '26'], ['Adam Gaudette', 'VAN', 'C', '56', '5', '7', '12', '18', '55', '48', '15']]

import pprint
print('pre-sorted')
pprint.pprint(arr)
print('sorted')
pprint.pprint(bubbleSort(arr))
 pre-sorted
[['A.J. Greer', 'COL', 'LW', '15', '1', '1', '2', '14', '9', '20', '5'], 
 ['Aaron Ekblad', 'FLA', 'D', '82', '13', '24', '37', '47', '180', '114', '88'], 
 ['Adam Clendening', 'CLS', 'D', '4', '0', '0', '0', '0', '3', '1', '3'], 
 ['Adam Cracknell', 'FA', 'C', '2', '0', '0', '0', '0', '3', '6', '0'], 
 ['Adam Erne', 'DET', 'LW', '65', '7', '13', '20', '40', '70', '159', '26'], 
 ['Adam Gaudette', 'VAN', 'C', '56', '5', '7', '12', '18', '55', '48', '15']]

sorted
[['Adam Clendening', 'CLS', 'D', '4', '0', '0', '0', '0', '3', '1', '3'], 
 ['Adam Cracknell', 'FA', 'C', '2', '0', '0', '0', '0', '3', '6', '0'], 
 ['A.J. Greer', 'COL', 'LW', '15', '1', '1', '2', '14', '9', '20', '5'], 
 ['Adam Gaudette', 'VAN', 'C', '56', '5', '7', '12', '18', '55', '48', '15'], 
 ['Adam Erne', 'DET', 'LW', '65', '7', '13', '20', '40', '70', '159', '26'], 
 ['Aaron Ekblad', 'FLA', 'D', '82', '13', '24', '37', '47', '180', '114', '88']]
输出

arr = [['A.J. Greer', 'COL', 'LW', '15', '1', '1', '2', '14', '9', '20', '5'], ['Aaron Ekblad', 'FLA', 'D', '82', '13', '24', '37', '47', '180', '114', '88'], ['Adam Clendening', 'CLS', 'D', '4', '0', '0', '0', '0', '3', '1', '3'], ['Adam Cracknell', 'FA', 'C', '2', '0', '0', '0', '0', '3', '6', '0'], ['Adam Erne', 'DET', 'LW', '65', '7', '13', '20', '40', '70', '159', '26'], ['Adam Gaudette', 'VAN', 'C', '56', '5', '7', '12', '18', '55', '48', '15']]

import pprint
print('pre-sorted')
pprint.pprint(arr)
print('sorted')
pprint.pprint(bubbleSort(arr))
 pre-sorted
[['A.J. Greer', 'COL', 'LW', '15', '1', '1', '2', '14', '9', '20', '5'], 
 ['Aaron Ekblad', 'FLA', 'D', '82', '13', '24', '37', '47', '180', '114', '88'], 
 ['Adam Clendening', 'CLS', 'D', '4', '0', '0', '0', '0', '3', '1', '3'], 
 ['Adam Cracknell', 'FA', 'C', '2', '0', '0', '0', '0', '3', '6', '0'], 
 ['Adam Erne', 'DET', 'LW', '65', '7', '13', '20', '40', '70', '159', '26'], 
 ['Adam Gaudette', 'VAN', 'C', '56', '5', '7', '12', '18', '55', '48', '15']]

sorted
[['Adam Clendening', 'CLS', 'D', '4', '0', '0', '0', '0', '3', '1', '3'], 
 ['Adam Cracknell', 'FA', 'C', '2', '0', '0', '0', '0', '3', '6', '0'], 
 ['A.J. Greer', 'COL', 'LW', '15', '1', '1', '2', '14', '9', '20', '5'], 
 ['Adam Gaudette', 'VAN', 'C', '56', '5', '7', '12', '18', '55', '48', '15'], 
 ['Adam Erne', 'DET', 'LW', '65', '7', '13', '20', '40', '70', '159', '26'], 
 ['Aaron Ekblad', 'FLA', 'D', '82', '13', '24', '37', '47', '180', '114', '88']]

“我知道python上的内置排序函数,但我更愿意使用冒泡排序”听起来很像“我不想承认这是家庭作业,但这很糟糕):-)嗨,我更新了我的问题,表明我尝试过,但我只能按字母顺序排序,我不确定如何按数组中的特定值对列表进行排序。