leetcood学习笔记-88-合并两个有序数组
题目描述:
第一次提交:
class Solution: def merge(self, nums1: List[int], m: int, nums2: List[int], n: int) -> None: """ Do not return anything, modify nums1 in-place instead. """ for i in range(n): nums1.remove(nums1[-1]) for i in range(n): nums1.append(nums2[i]) nums1.sort()
方法二:
class Solution: def merge(self, nums1: List[int], m: int, nums2: List[int], n: int) -> None: """ Do not return anything, modify nums1 in-place instead. """ for i in range(m+n-1,-1,-1): if m>0 and n>0: if nums1[m-1]>nums2[n-1]: nums1[i] = nums1[m-1] m = m-1 else: nums1[i] = nums2[n-1] n = n-1 if n>0: nums1[:n] = nums2[:n]
python sort函数和sorted函数区别:
Python list内置sort()方法用来排序,也可以用python内置的全局sorted()方法来对可迭代的序列排序生成新的序列
一,最简单的排序
1.使用sort排序
my_list = [3, 5, 1, 4, 2] my_list.sort() print my_list #输出: [1, 2, 3, 4, 5]
使用sort()方法对list排序会修改list本身,不会返回新list,通常此方法不如sorted()方便,但是如果你不需要保留原来的list,此方法将更有效sort()。
sort()不能对dict字典进行排序
2.使用sorted()排序
my_list = [3, 5, 1, 4, 2] result = sorted(my_list) print result #输出: [1, 2, 3, 4, 5]