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

怎样在网站图片做超级链接新闻头条今日要闻国内新闻最新

怎样在网站图片做超级链接,新闻头条今日要闻国内新闻最新,wordpress可以建论坛吗,wordpress本地上传头像插件每日算法 - 2024年4月28日 记录今天完成的几道 LeetCode 算法题。 1877. 数组中最大数对和的最小值 题目描述: 思路 贪心策略。 解题过程 为了最小化所有数对和中的最大值,直观的想法是避免让两个较大的数相加。因此,最优策略是将数组中最小的元素…

每日算法 - 2024年4月28日

记录今天完成的几道 LeetCode 算法题。


1877. 数组中最大数对和的最小值

题目描述:
题目图片

思路

贪心策略。

解题过程

为了最小化所有数对和中的最大值,直观的想法是避免让两个较大的数相加。因此,最优策略是将数组中最小的元素与最大的元素配对,次小的元素与次大的元素配对,以此类推。这样可以使得每个数对的和相对均衡,从而让其中的最大和尽可能小。

具体步骤如下:

  1. 对数组 nums 进行升序排序。
  2. 使用双指针 leftright 分别指向数组的开头和结尾。
  3. 初始化一个变量 ret 来记录遇到的最大数对和,初始值为 0。
  4. left < right 时,持续循环:
    • 计算当前配对 nums[left] + nums[right] 的和。
    • 更新 ret = Math.max(ret, nums[left] + nums[right])
    • left 指针右移一位 (left++),right 指针左移一位 (right--),考虑下一对元素。
  5. 循环结束后,ret 即为所求的最小的最大数对和。

复杂度

  • 时间复杂度: O ( N log ⁡ N ) O(N \log N) O(NlogN),主要开销在于对数组进行排序。
  • 空间复杂度: O ( 1 ) O(1) O(1) O ( log ⁡ N ) O(\log N) O(logN),取决于排序算法所使用的额外空间(原地排序通常认为是 O ( 1 ) O(1) O(1) 额外空间)。

Code

class Solution {public int minPairSum(int[] nums) {Arrays.sort(nums);int ret = 0;int left = 0, right = nums.length - 1;while (left < right) {ret = Math.max(ret, (nums[left] + nums[right]));left++;right--;}return ret;}
}

881. 救生艇

题目描述:
题目图片

思路

贪心策略。

解题过程

目标是使用最少的船只。每艘船最多载两人,且总重量不超过 limit。为了最大化每艘船的利用率(即尽量让每艘船载两人),我们应该优先考虑最重的人。

具体步骤如下:

  1. people 数组(代表每个人的体重)进行升序排序。
  2. 使用双指针 left 指向体重最轻的人,right 指向体重最重的人。
  3. 初始化船只数量 boats = 0
  4. left <= right 时,持续循环(<= 是为了处理最后只剩一人的情况):
    • 每次循环代表需要派遣一条新船,因此 ret++
    • 让最重的人 (people[right]) 上船。
    • 检查当前最轻的人 (people[left]) 是否能和这位最重的人同乘一条船,即判断 people[left] + people[right] <= limit
    • 如果可以同乘 (people[left] + people[right] <= limit),那么最轻的人也上船,将 left 指针右移一位 (left++)。
    • 无论最轻的人是否能上船,最重的人都已经确定要上这条船了,所以将 right 指针左移一位 (right--)。
  5. 循环结束后,ret 即为所需的最小船只数量。

复杂度

  • 时间复杂度: O ( N log ⁡ N ) O(N \log N) O(NlogN),主要开销在于排序。
  • 空间复杂度: O ( 1 ) O(1) O(1) O ( log ⁡ N ) O(\log N) O(logN),取决于排序算法使用的额外空间。

Code

class Solution {public int numRescueBoats(int[] people, int limit) {Arrays.sort(people);int left = 0, right = people.length - 1;int ret = 0;while (left <= right) {int light = people[left];int weight = people[right];ret++;right--;if (light + weight <= limit) {left++;}}return ret;}
}

2592. 最大化数组的伟大值

题目描述:
题目图片

思路

贪心策略。

解题过程

题目要求找到数组 nums 的一个排列 perm,使得满足 nums[i] < perm[i] 的索引 i 的数量最大化。这个最大数量就是数组的“伟大值”。

一个有效的贪心策略是:

  1. 对原数组 nums 进行升序排序。
  2. 我们希望为尽可能多的 nums[i] 找到一个比它大的 nums[j] 来作为 perm[i]。为了给后面的 nums 元素留下更多(可能更大)的选择,对于当前的 nums[i],我们应该寻找满足 nums[j] > nums[i] 的最小的 nums[j] 来进行配对。
  3. 使用双指针 ij 来实现这个过程:
    • 指针 i:指向当前需要寻找配对的元素 nums[i]
    • 指针 j:指向可用于配对的候选元素 nums[j]
  4. 初始化 i = 0, j = 1,以及伟大值计数 greatness = 0
  5. j 未越界 (j < nums.length) 时,持续循环:
    • 如果 nums[i] < nums[j]: 找到了一个有效的配对。nums[j] 可以作为 nums[i]perm[i]。增加伟大值 greatness++。同时移动两个指针 i++j++,表示 nums[i]nums[j] 都已被使用,接下来考虑 nums[i+1]nums[j+1]
    • 如果 nums[i] >= nums[j]: 说明 nums[j] 不够大,不能与 nums[i] 配对。我们需要一个更大的元素来配对 nums[i]。因此,保持 i 不动,只移动 j 指针 (j++),去寻找下一个可能满足条件的 nums[j]
  6. 循环结束后,greatness 即为最大化的伟大值。

复杂度

  • 时间复杂度: O ( N log ⁡ N ) O(N \log N) O(NlogN),主要开销在于排序。
  • 空间复杂度: O ( 1 ) O(1) O(1) O ( log ⁡ N ) O(\log N) O(logN),取决于排序算法使用的额外空间。

Code

import java.util.Arrays;class Solution {public int maximizeGreatness(int[] nums) {// 1. 对数组排序Arrays.sort(nums);int n = nums.length;int greatness = 0; // 记录伟大值int i = 0; // 指向需要被配对的元素 nums[i]int j = 1; // 指向用于配对的候选元素 nums[j]// 2. 使用双指针寻找配对while (j < n) {if (nums[i] < nums[j]) {// 找到有效配对 (nums[i], nums[j])greatness++;i++; // 移动 i,考虑下一个需要配对的元素j++; // 移动 j,考虑下一个候选元素} else {// nums[j] 不够大,不能配对 nums[i]// 保持 i 不动,移动 j 寻找更大的候选元素j++;}}// 3. 返回结果return greatness;}
}

http://www.dtcms.com/wzjs/245642.html

相关文章:

  • 单县网站企业查询平台
  • 企业信息化建设如何帮助客户理解网站流量seo关键字优化
  • 辽宁省网吧监管对网站有做用吗怎么开通网站平台
  • 正能量软件网站免费入口淘宝网官方网站
  • 电子商务网站建设与管理期末黄页网络的推广网站有哪些软件
  • 南通seo排名公司线上seo关键词优化软件工具
  • 外贸网站做的作用是什么软文推广是什么意思?
  • 泰安集团网站建设费用注册网站流程
  • 网站设计包括哪些步骤网络营销活动策划方案模板
  • 网络营销seo教程广州王牌seo
  • 怎么对网站做seo优化360地图下载最新版
  • 真分析对比他们的功能及特点_提出自己对政府门户网站建设的见解.百度关键词首页排名怎么上
  • 网站开发离线下载报表如何做好一个营销方案
  • 做设计常用的素材网站如何用模板做网站
  • 山东今天最新疫情seo排名工具哪个好
  • 邢台网站制作哪家好站长之家seo概况查询
  • 做网站点子seo外包顾问
  • 怎么向google提交网站百度网盘客服
  • 餐饮网站开发方案百度信息流广告怎么投放
  • 番禺网站建设公司百度搜索 手机
  • 深圳网站建设汤小巧企业网站有哪些
  • 做seo网站诊断书怎么做百度搜索资源
  • 佛山做网站需要多少钱网站域名解析ip
  • 公司网站建设制作难么网站推广引流
  • 网站建设目标 优帮云网站制作的费用
  • 做网站找哪里网站优化查询代码
  • 四站合一网站制作网址收录大全
  • 易思腾网站建设百度搜索指数排行榜
  • 建设网站用哪个好seo平台
  • h5网站源代码怎么百度推广