当前位置: 首页 > news >正文

深圳龙华做网站的fifa世界排名最新

深圳龙华做网站的,fifa世界排名最新,wordpress修改版面,济南网站建设培训班题目描述 给你一个整型数组 nums ,在数组中找出由三个数组成的最大乘积,并输出这个乘积。 示例 示例 1 输入:nums [1,2,3] 输出:6示例 2 输入:nums [1,2,3,4] 输出:24示例 3 输入:nums […

题目描述

给你一个整型数组 nums ,在数组中找出由三个数组成的最大乘积,并输出这个乘积。

示例

示例 1

输入:nums = [1,2,3]
输出:6

示例 2

输入:nums = [1,2,3,4]
输出:24

示例 3

输入:nums = [-1,-2,-3]
输出:-6

题解

这个问题可以通过排序和考虑正数与负数的组合来解决。

  1. 排序:首先对数组进行排序。
  2. 考虑情况:
    ○ 如果数组中包含负数,最大的乘积可能来自两个最小的负数(它们的乘积为正数)和一个最大的正数。
    ○ 如果数组中不包含负数,最大的乘积就是最大的三个数的乘积。
  3. 计算最大乘积:根据排序后的数组,计算上述两种情况的乘积,并返回较大的那个。

代码实现

int maximumProduct(vector<int>& nums) {sort(nums.begin(), nums.end());int n = nums.size();// 情况1: 两个最小的负数和一个最大的正数int product1 = nums[0] * nums[1] * nums[n - 1];// 情况2: 三个最大的正数int product2 = nums[n - 1] * nums[n - 2] * nums[n - 3];return max(product1, product2);
}

复杂度分析

● 时间复杂度:O(n log n),其中 n 是数组 nums 的长度。主要时间消耗在排序上。
● 空间复杂度:O(1),除了输入数组外,我们只使用了常数个额外变量。
这个算法通过排序和考虑两种可能的情况来计算最大乘积。

http://www.mmbaike.com/news/34567.html

相关文章:

  • 集约化网站建设管理深圳网站建设三把火科技
  • 网站速度打开慢的原因win7优化设置
  • 工会网站建设网络营销经典成功案例
  • 做愛偷拍视频网站专业的营销团队哪里找
  • 武汉设计网站的公司宝鸡网站开发公司
  • 大学生兼职网网站建设计划书千锋教育培训多少钱
  • wordpress5置顶关键词seo
  • 网站搭建学什么软件中国站长站
  • 关于做公司app的软件或网站合肥网站优化搜索
  • 学做网站视频论坛市场调研报告800字
  • 做公司网站要注意哪些问题百度seo搜索引擎优化培训
  • 网站备案 异地今日军事新闻最新消息
  • 怎样查询网站的点击量网站开发流程的8个步骤
  • 复旦学霸张立勇做的有关寺庙网站互动营销案例
  • 青岛外贸建设网站制作收录优美图片官网
  • 蒙阴网站建设新媒体seo指的是什么
  • 成都疫情防控最新消息广州seo学徒
  • 中国电子商务公司排名seo快速排名代理
  • 怎么找回网站哈尔滨新闻头条今日新闻
  • 自建网站做外贸网络营销的方式有哪些
  • 网站后台验证码不显示可以免费打广告的网站
  • 电商网站设计素材浏览器打开是2345网址导航
  • 廊坊哪里能够做网站优化新十条
  • 如何给网站加引导页网站友情链接怎么添加
  • 网站开发一个多少钱百度收录站长工具
  • 女生做网站推广推广普通话的宣传语
  • 什么软件做网站营销推广怎么做
  • it公司怎么在国外网站做宣传怎么做网站主页
  • 产品发布网站模板怎么卸载windows优化大师
  • 网站安全认证多少钱电商平台建设方案