[LeetCode]624. Maximum Distance in Arrays
2017-06-18 21:00
323 查看
[LeetCode]624. Maximum Distance in Arrays
题目描述
思路
保存当前最大最小和第二大第二小的值如果最大最小值在同一个数组里就返回max(最大 - 第二小, 第二大 - 最小)
更新当前最大最小和第二大第二小的过程
当更新最大最小值时,先将目前最大最小值保存到第二大第二小, 再更新
当无法更新最大最小值时,检查第二大第二小能否符合更新条件,更新条件除去更大更小之外也包括不能与当前最大最小相同
以上更新均更新下标,即第几个数组中获取到的最大最小值
代码
#include <iostream> #include <vector> #include <algorithm> using namespace std; class Solution { public: int maxDistance(vector<vector<int>>& arrays) { int curMin = 0, nextMin = 1, curMax = 0, nextMax = 1; for (int i = 0; i < arrays.size(); ++i) { if (arrays[i].front() < arrays[curMin].front()) { nextMin = curMin; curMin = i; } else if (arrays[i].front() <= arrays[nextMin].front() && i != curMin) { nextMin = i; } if (arrays[i].back() > arrays[curMax].back()) { nextMax = curMax; curMax = i; } else if (arrays[i].back() >= arrays[nextMax].back() && i != curMax) { nextMax = i; } } return curMin == curMax ? max(abs(arrays[nextMax].back() - arrays[curMin].front()), abs(arrays[curMax].back() - arrays[nextMin].front())) : abs(arrays[curMax].back() - arrays[curMin].front()); } }; int main() { vector<vector<int>> arrays = { {-1, 1},{-3, 4}, {-2, 2} }; Solution s; cout << s.maxDistance(arrays) << endl; system("pause"); return 0; }
相关文章推荐
- Python 刷题日记:LeetCode 624. Maximum Distance in Arrays
- [LeetCode] 624. Maximum Distance in Arrays 数组中的最大距离
- [Leetcode] 624. Maximum Distance in Arrays 解题报告
- LeetCode 624. Maximum Distance in Arrays (在数组中的最大距离)$
- [leetcode]: 624. Maximum Distance in Arrays
- leetcode-624. Maximum Distance in Arrays
- leetcode624: Maximum Distance in Arrays
- [LeetCode] Maximum Distance in Arrays 数组中的最大距离
- [LeetCode] 624.Maximum Distance in Arrays
- LeetCode解题思路之Maximum Distance in Arrays
- LeetCode Maximum Distance in Arrays
- Leetcode 624 Maximum Distance in Arrays
- LeetCode-624:Maximum Distance in Arrays (多数组找元素最大距离)
- LeetCode Search in Rotated Sorted Arrays ||
- 624.Maximum Distance in Arrays --找数组中的最大差值
- LeetCode-Find Minimum in Rotated Sorted Arrays
- [LeetCode] Find the k-th Smallest Element in the Union of Two Sorted Arrays
- Maximum Distance in Arrays (第十七周 数组)
- Maximum Distance in Arrays
- Find k-th largest (or Median) in two sorted arrays