python中列表按组成最大自然数排列?

例如a = [2,4,1]
顺着看(一个方向看),每个元素相邻元素不变,能组成的自然数有三个,按组成数最大的排(241,412,124中,412最大)。
输出a = [4,1,2]

列表数据很多,有重复数据的话类似 a = [4,6,3,2,6,3,3]
这样要输出 a = [6,3,3,4,6,2,3,2]

a=[2,5,6,4,1]
print(a.index(max(a)))
p=a.index(max(a))
b=[]
for i in range(p,len(a)):
    b.append(a[i])
for i in range(0,p):
    b.append(a[i])
print(b)


 有帮助请采纳

412为什么最大,有什么规律吗


a=[3,3,6,7,8,3,2,6]
c=[]
for i in range(len(a)):
    a.insert(0,a.pop())
    a=list(map(str,a))
    b=''.join(a)
    c.append(b)
print(max(c))