一.题目:
煎饼排序.每次可以把前k个数字进行翻转,问达到有序状态时的翻转模式结果.
二.解题思路:
首先我们找到数组中的最大值,然后先将它和他前面的所有元素翻转一次,接着将整个数组翻转一次,如此循环最终将所有元素排序.
代码如下:
class Solution(object):
def pancakeSort(self, A):
"""
:type A: List[int]
:rtype: List[int]
"""
length = len(A)
res = []
for x in range(length, 0, -1):
i = A.index(x)
res.append(i+1)
res.append(x)
A = A[:i:-1] + A[:i]
return res