Maximum Product of Three Numbers LeetCode solution in C++
1class Solution {2public:3int maximumProduct(vector<int> &nums) {4int min1 = INT_MAX,5min2 = INT_MAX; // Both have the maximum value that is +infinte6int max1 = INT_MIN, max2 = INT_MIN,7max3 = INT_MIN; // All these have the minimum value that is -infinte89// now finding all these value above declared.10for (int i = 0; i < nums.size(); i++) {11if (nums[i] > max1) {12max3 = max2;13max2 = max1;14max1 = nums[i];1516} else if (nums[i] > max2) {17max3 = max2;18max2 = nums[i];1920} else if (nums[i] > max3) {21max3 = nums[i];22}2324if (nums[i] < min1) {25min2 = min1;26min1 = nums[i];2728} else if (nums[i] < min2) {29min2 = nums[i];30}31}32return max(min1 * min2 * max1, max1 * max2 * max3);33}34};