import java.util.HashMap;
/**
*
* Feb 27, 2017 2:39:11 PM
* @author tangmin
*
*/
public class NextGreaterElement {
public static void main(String[] args) {
// TODO Auto-generated method stub
// int[] findNums = {4,1,2}, nums= {1,3,4,2};
int[] findNums = {2,4}, nums= {1,2,3,4};
for (int i : new NextGreaterElement().nextGreaterElement(findNums, nums)) {
System.out.println(i);
}
}
public int[] nextGreaterElement(int[] findNums, int[] nums) {
HashMap<Integer, Integer> map = new HashMap<Integer, Integer>();
for (int i = 0; i < nums.length; i++) {
int j = i+1;
for (; j < nums.length; j++) {
if (nums[i]<nums[j]) {
break; // break直接跳出for循环,不再执行j++语句
}
}
if (j < nums.length) {
map.put(nums[i], nums[j]);
}
else {
map.put(nums[i], -1);
}
}
int[] resNums = new int[findNums.length];
for (int k = 0; k < resNums.length; k++) {
resNums[k] = map.get(findNums[k]);
}
return resNums;
}
}
leetcode 496. Next Greater Element I
最新推荐文章于 2021-10-26 23:49:41 发布