我有一张包含以下内容的表:
table = [['BA','A'],['CC','AA]]
我正在使用基数排序来对表中每个列表中的字符串元素进行排序。
def radix_sort(L, i):
if len(L) <= 1:
return L
done_bucket = []
buckets = [[] for x in range(27)]
for s in L:
if i >= len(s):
done_bucket.append(s)
else:
buckets[ord(s[i]) - ord('A')].append(s)
buckets = [radix_sort(b, i + 1) for b in buckets]
return done_bucket + [b for blist in buckets for b in blist]
print(radix_sort(table,0))
我遇到的问题是基数代码的for循环段,它不访问字符串元素,而是访问整个列表。
我期待输出如此:
[['A','BA'],['AA','CC']]
如何修改基数代码以满足二维列表?