从数组中选择四条边形成的矩形的最大面积

2024 年 8 月 28 日 | 3 分钟阅读

给定一组代表长度的 n 个正整数。确定从给定数组中选择四条边可以形成的最大可能面积。需要注意的是,只有当给定数组包含两对相等的值时,才能形成一个矩形。

示例

方法 1(排序)

该任务基本上归结为在数组中查找两对相等的值。如果存在多于两对,则选择值最大的两对。一种简单的解决方案是执行以下操作。

  • 对给定数组进行排序。
  • 从大到小遍历数组,并返回值最大的两对。

C++ 程序

输出

24

时间复杂度: O (n Log n)

方法 2(哈希)

在哈希集中,插入所有元素的第一次出现。跟踪不超过两次出现的值。

C++ 程序

输出

24

时间复杂度: O (n)