| 
 | |
| 
 | 
| 开发:
C++知识库 
Java知识库 
JavaScript 
Python 
PHP知识库 
人工智能 
区块链 
大数据 
移动开发 
嵌入式 
开发工具 
数据结构与算法 
开发测试 
游戏开发 
网络协议 
系统运维 教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 | 
| -> 数据结构与算法 -> Leetcode 628:三个数的最大乘积 -> 正文阅读 | 
|  | 
| [数据结构与算法]Leetcode 628:三个数的最大乘积 | 
| 题目描述: 
 示例 1: 
 示例 2: 
 示例 3: 
 解法一:排序 解题思路: 想要得到一个数组中三个数组成的最大乘积,就要找到数组中的三个最大数,但是还要考虑到数组中是否存在负数。因此,基于数组按升序排列的前提下,分为以下情况: (1)如果数组中全是正数,则直接选择排序数组的后三个数作为乘积。 (2)如果数组中全是非正数,则同样也是选择排序数组后三个数作为乘积。 (3)如果数组中既有负数,也有正数,则选择两个最小负数和一个最大正数作为乘积。 代码如下: 解法二:线性扫描 解题思路: 解法一中,不同的排序算法的时间复杂度会影响整体的执行时间,因此可以通过线性扫描的方式降低时间复杂度。实际上,我们只要求出数组中最大的三个数以及最小的两个数即可。 代码如下:  | 
|  | 
|  | 
| 上一篇文章 下一篇文章 查看所有文章 | 
| 
 | 
| 开发:
C++知识库 
Java知识库 
JavaScript 
Python 
PHP知识库 
人工智能 
区块链 
大数据 
移动开发 
嵌入式 
开发工具 
数据结构与算法 
开发测试 
游戏开发 
网络协议 
系统运维 教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 | 
| 360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年11日历 | -2025/11/1 4:32:53- | 
| 
 | 
| 网站联系: qq:121756557 email:121756557@qq.com IT数码 |