1 class Solution(object):
 2     def pancakeSort(self, A: 'List[int]') -> 'List[int]':
 3         n = len(A)
 4         result = list()
 5         while n > 1:
 6             idx = A.index(n)
 7             dif = n - 1 - idx
 8             pre = []
 9             if dif != 0:
10                 if idx != 0:
11                     result.append(idx+1)
12                 result.append(n)
13                 pre = A[idx+1:]
14                 pre.reverse()
15             A = pre + A[:idx]
16             n = len(A)
17             #print(A)
18         return result

从大到小寻找每个数字的位置,将其先移动到第一个位置,再将其移动到其数字应该的位置(index==num-1)。

posted on 2019-04-24 18:42  Sempron2800+  阅读(90)  评论(0编辑  收藏  举报