Go•maximum-product-of-three-numbers/solution.go
package main
import "sort"
func maximumProduct(nums []int) int {
values := append([]int(nil), nums...)
sort.Ints(values)
last := len(values) - 1
first := values[last] * values[last-1] * values[last-2]
second := values[0] * values[1] * values[last]
if second > first {
return second
}
return first
}
Python•maximum-product-of-three-numbers/solution.py
class Solution:
def maximumProduct(self, nums: list[int]) -> int:
values = sorted(nums)
return max(values[-class="syntax-number">1] * values[-class="syntax-number">2] * values[-class="syntax-number">3], values[class="syntax-number">0] * values[class="syntax-number">1] * values[-class="syntax-number">1])
TypeScript•maximum-product-of-three-numbers/solution.ts
function maximumProduct(nums: number[]): number {
const sorted = [...nums].sort((left, right) => left - right);
const last = sorted.length - class="syntax-number">1;
return Math.max(
sorted[last] * sorted[last - class="syntax-number">1] * sorted[last - class="syntax-number">2],
sorted[class="syntax-number">0] * sorted[class="syntax-number">1] * sorted[last],
);
}