选择具有最大周长的三角形边 JavaScript
javascriptweb developmentfront end technologyobject oriented programming
三角形的周长是三角形所有三条边的总和。我们需要编写一个 JavaScript 函数,该函数接受至少三个或更多元素的数字数组。
我们的函数应该从数组中挑选三条最长的边(最大的数字),当它们相加时可以给出数组的最大周长,我们需要确保挑选的三条边实际上可以构成一个三角形。如果数组中不存在可以构成有效三角形的三条边,那么我们必须返回零。
有效三角形是任意两条边的总和始终大于第三条边的三角形。
示例
const arr = [1, 2, 3, 5, 6, 7, 9]; const largestPerimeter = (arr = []) => { arr.sort((a, b) => a - b); let max = 0; for (let i = arr.length - 1; i >= 2; i--) { let start = i - 2; let end = i - 1; while (start < end) { if (arr[end] + arr[start] > arr[i]) { return arr[end] + arr[start] + arr[i]; } else { start++; }; }; }; return 0; }; console.log(largestPerimeter(arr));
输出
控制台中的输出将是 −
22