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

网站建设与管理用什么软件有哪些外包推广公司

网站建设与管理用什么软件有哪些,外包推广公司,网站的友情链接怎么做,做挂网站吗🚀 算法题 🚀 🌲 算法刷题专栏 | 面试必备算法 | 面试高频算法 🍀 🌲 越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨ 🌲 作者简介:硕风和炜,…

在这里插入图片描述

🚀 算法题 🚀

🌲 算法刷题专栏 | 面试必备算法 | 面试高频算法 🍀
🌲 越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨
🌲 作者简介:硕风和炜,CSDN-Java领域新星创作者🏆,保研|国家奖学金|高中学习JAVA|大学完善JAVA开发技术栈|面试刷题|面经八股文|经验分享|好用的网站工具分享💎💎💎
🌲 恭喜你发现一枚宝藏博主,赶快收入囊中吧🌻
🌲 人生如棋,我愿为卒,行动虽慢,可谁曾见我后退一步?🎯🎯

🚀 算法题 🚀

在这里插入图片描述

🍔 目录

    • 🚩 题目链接
    • ⛲ 题目描述
    • 🌟 求解思路&实现代码&运行结果
      • ⚡ 暴力法
        • 🥦 求解思路
        • 🥦 实现代码
        • 🥦 运行结果
      • ⚡ 动态规划
        • 🥦 求解思路
        • 🥦 实现代码
        • 🥦 运行结果
      • ⚡ 单调栈
        • 🥦 求解思路
        • 🥦 实现代码
        • 🥦 运行结果
    • 🍋 总结
    • 💬 共勉

🚩 题目链接

  • 42. 接雨水

⛲ 题目描述

给定 n 个非负整数表示每个宽度为1的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。

img
输入:height = [0,1,0,2,1,0,1,3,2,1,2,1]
输出:6
解释:上面是由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表示的高度图,在这种情况下,可以接 6 个单位的雨水(蓝色部分表示雨水)。

示例 2:

输入:height = [4,2,0,3,2,5]
输出:9

提示:

n == height.length
1 <= n <= 2 * 104
0 <= height[i] <= 105

🌟 求解思路&实现代码&运行结果


⚡ 暴力法

🥦 求解思路

暴力法的思路很简单,对于每一个柱子,我们找到其左右两侧的最大高度,分别记为 l e f t M a x leftMax leftMax r i g h t M a x rightMax rightMax,然后计算其储水量 m i n ( l e f t M a x , r i g h t M a x ) − h e i g h t i min(leftMax, rightMax) - height_i min(leftMax,rightMax)heighti,将所有储水量累加起来即可。

🥦 实现代码

class Solution {public int trap(int[] height) {int n = height.length;int ans = 0;for (int i = 0; i < n; i++) {int leftMax = 0;int rightMax = 0;for (int j = i; j >= 0; j--) leftMax = Math.max(leftMax, height[j]);for (int j = i; j < n; j++) rightMax = Math.max(rightMax, height[j]);ans += Math.min(leftMax, rightMax) - height[i];}return ans;}
}

🥦 运行结果

时间复杂度为 O ( n 2 ) O(n^2) O(n2)

在这里插入图片描述


⚡ 动态规划

🥦 求解思路

我们可以使用动态规划来优化暴力法。首先预处理出每个位置左侧的最大高度和右侧的最大高度,分别存储在数组 l e f t M a x leftMax leftMax r i g h t M a x rightMax rightMax 中。然后对于每个位置,计算其储水量 m i n ( l e f t M a x [ i ] , r i g h t M a x [ i ] ) − h e i g h t [ i ] min(leftMax[i], rightMax[i]) - height[i] min(leftMax[i],rightMax[i])height[i],将所有储水量累加起来即可。

🥦 实现代码

class Solution {public int trap(int[] height) {int n=height.length;int[] leftMax=new int[n];int[] rightMax=new int[n];leftMax[0]=height[0];rightMax[n-1]=height[n-1];for(int i=1;i<n;i++) leftMax[i]=Math.max(leftMax[i-1],height[i]);for(int i=n-2;i>=0;i--) rightMax[i]=Math.max(rightMax[i+1],height[i]);int ans=0;for(int i=0;i<n;i++) ans+=Math.min(leftMax[i],rightMax[i])-height[i];return ans;}
}

🥦 运行结果

时间复杂度为 O ( n ) O(n) O(n)

在这里插入图片描述


⚡ 单调栈

🥦 求解思路

使用单调栈来优化动态规划。我们使用栈来维护一个递减的柱子高度序列。具体地,遍历到第 i i i 个柱子时,如果当前柱子的高度 h e i g h t [ i ] height[i] height[i] 小于栈顶柱子的高度,则将当前柱子入栈;否则,不断从栈中弹出元素,直到栈为空或者当前栈顶元素的高度大于 h e i g h t [ i ] height[i] height[i],然后将当前柱子入栈。弹出元素时,我们可以计算其储水量,并将其累加到答案中。

🥦 实现代码

class Solution {public int trap(int[] height) {int n = height.length;Stack<Integer> stack = new Stack<>();int ans = 0;for (int i = 0; i < n; i++) {while (!stack.isEmpty() && height[i] > height[stack.peek()]) {int top = stack.pop();if (stack.isEmpty()) {break;}int left = stack.peek();int width = i - left - 1;int heightDiff = Math.min(height[left], height[i]) - height[top];ans += width * heightDiff;}stack.push(i);}return ans;}
}

🥦 运行结果

时间复杂度为 O ( n ) O(n) O(n)

在这里插入图片描述


🍋 总结

本文介绍了三种解法来解决 LeetCode 42 题,即接雨水问题。暴力法时间复杂度较高,使用动态规划和单调栈可以优化其效率。动态规划和单调栈的时间复杂度均为 O ( n ) O(n) O(n)。在实际应用中,可以根据具体情况来选择最合适的方法。

💬 共勉

最后,我想和大家分享一句一直激励我的座右铭,希望可以与大家共勉!

在这里插入图片描述

在这里插入图片描述

http://www.yidumall.com/news/69720.html

相关文章:

  • 刮奖网站百度店铺
  • 海南网站搭建外包厦门百度代理公司
  • 做网站哪个公司营销策略包括哪些内容
  • 都匀网站制作seo外包优化服务商
  • 济南代做标书网站标志百度收录刷排名
  • 营销网站制作费用解释seo网站推广
  • 营销型网站建设概述网络营销方式方法
  • 外贸公司做网站该去哪里找360建站官网
  • 网站开发主要用什么语言百度竞价托管公司
  • 快速搭建网站demo营销型网站建设流程
  • 泰安哪里做网站aso应用商店优化原因
  • 温州seo网络推广代理价格网站优化检测
  • 做个网站好还是做淘宝好长春网站建设平台
  • 郑州建设企业网站找哪个公司今日头条网页版入口
  • 网站上做旅游卖家要学什么条件网页制作的软件
  • wordpress加速插件seo整站优化外包公司
  • 运城手机网站建设seo百度网站排名研究中心关键词首页优化
  • 淘宝客搜索网站怎么做江门seo推广公司
  • 都江堰市建设局网站关键词排名优化公司
  • 建设银行园湖路支行网站chrome谷歌浏览器官方下载
  • 深圳网站建设 网站设计网站自动收录
  • 支付宝免签约wordpressseoer是什么意思
  • 网站搜索引擎优化的基本内容网站模板源码
  • 做简历哪个网站比较好温州seo排名公司
  • 上传到服务器的网站打开是空白网络口碑推广公司
  • 宁波高新区网站制作百度快照和广告的区别
  • 398做网站彩铃link友情买卖
  • 如何将网址提交到一些权重比较高的网站网站关键词怎么写
  • 如何建设视频资源电影网站百度代理
  • 做网站要多少带宽百度关键词快速排名