国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Leetcode-Algorithms Next Greater Element I

2019-11-08 02:00:31
字體:
來源:轉載
供稿:網友

You are given two arrays (without duplicates) nums1 and nums2 where nums1’s elements are subset of nums2. Find all the next greater numbers for nums1’s elements in the corresponding places of nums2.

The Next Greater Number of a number x in nums1 is the first greater number to its right in nums2. If it does not exist, output -1 for this number.

Example 1: Input: nums1 = [4,1,2], nums2 = [1,3,4,2]. Output: [-1,3,-1] Explanation: For number 4 in the first array, you cannot find the next greater number for it in the second array, so output -1. For number 1 in the first array, the next greater number for it in the second array is 3. For number 2 in the first array, there is no next greater number for it in the second array, so output -1.

Example 2: Input: nums1 = [2,4], nums2 = [1,2,3,4]. Output: [3,-1] Explanation: For number 2 in the first array, the next greater number for it in the second array is 3.

Note: All elements in nums1 and nums2 are unique. The length of both nums1 and nums2 would not exceed 1000.

給出兩個不含重復元素的array nums1, nums2。 nums1 是nums2的子集(nums2包含nunms1的所有元素)。

Next Greater Element 指的是找出在nums1里面的每個元素在nums2中相同元素的右邊比它本身大的元素, 如果沒有或者比其小則為-1。

class Solution(object): def nextGreaterElement(self, findNums, nums): """ :type findNums: List[int] :type nums: List[int] :rtype: List[int] """ result = [] for c in findNums: pos = nums.index(c) while pos <= (len(nums) - 1): if pos == len(nums) - 1: result.append(-1) break else: if nums[pos+1] > c: result.append(nums[pos+1]) break else: pos += 1 return result

附上leeetcode答案 O(n):

d = {} st = [] ans = [] for x in nums: while len(st) and st[-1] < x: d[st.pop()] = x st.append(x) for x in findNums: ans.append(d.get(x, -1)) return ans
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 门头沟区| 承德市| 阳山县| 绥化市| 秦皇岛市| 乡宁县| 江永县| 于都县| 贵德县| 白水县| 株洲市| 兴城市| 巴里| 大姚县| 集安市| 伊春市| 密云县| 双牌县| 惠安县| 涪陵区| 迁西县| 吉安市| 信阳市| 天峨县| 克东县| 专栏| 内江市| 宜春市| 射阳县| 始兴县| 大洼县| 嵊州市| 如皋市| 新泰市| 东辽县| 七台河市| 芜湖县| 汕尾市| 上犹县| 华阴市| 昌都县|