1 # 问题描述: 两个不重复的数组nums1 和nums2,其中nums1是nums2的子集.在nums2的相应位置找到nums1所有元素的下一个更大数字
2 # nums1中的数字x的下一个更大的是nums2中x右边第1个更大的数字.如果它不存在返回-1,
3 # nums1和nums2中的所有数字都是唯一的,nums1和nums2的长度不超过1000
4 # 问题示例:nums1 = [4,1,2] nums2 = [1,3,4,2] 输出[-1,3,-1]
5 class Solution:
6 def nextBignums(self, nums1, nums2):
7 num = []
8 for i in nums1:
9 for j in range(len(nums2)):
10 if i == nums2[j]:
11 for k in nums2[j:]:
12 if k > i:
13 num.append(k)
14 break
15 else:
16 num.append(-1)
17
18 return num
19
20
21 c1 = Solution()
22 print(c1.nextBignums([0, 5, 4, 2, 1], [1, 5, 7, 0, 3, 4, 2]))