app开发者平台在数字化时代的重要性与发展趋势解析
572
2022-09-04
503. Next Greater Element II
Given a circular array (the next element of the last element is the first element of the array), print the Next Greater Number for every element. The Next Greater Number of a number x is the first greater number to its traversing-order next in the array, which means you could search circularly to find its next greater number. If it doesn’t exist, output -1 for this number.
Example 1:
Input: [1,2,1]Output: [2,-1,2]Explanation: The first 1's next greater number is 2; The number 2 can't find next greater number; The second 1's next greater number needs to search circularly, which is also 2.
Note: The length of given array won’t exceed 10000.
时间复杂度O(n ^ 2)。
class Solution { public int[] nextGreaterElements(int[] nums) { int size = nums.length; int[] ans = new int[size]; Arrays.fill(ans, -1); for (int i = 0; i < size; i++) { for (int j = i + 1; j % size != i; j++) { if (nums[j % size] > nums[i]) { ans[i] = nums[j % size]; break; } } } return
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~