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

网页制作网站设计稿wordpress怎么写代码

网页制作网站设计稿,wordpress怎么写代码,平面设计主要做的是什么,网站一般用什么免费字体代码随想录刷题60Day 目录 单调栈简介 单调栈的应用 下次更高温 下一个更大元素1 下一个更大元素2 接雨水 柱状图中最大矩形 单调栈简介 单调栈(Monotonic Stack)是一种特殊的栈数据结构,它满足元素的单调性,这种单调性需…

代码随想录刷题60Day


目录

单调栈简介

单调栈的应用

下次更高温

下一个更大元素1

下一个更大元素2

接雨水

柱状图中最大矩形


单调栈简介

单调栈(Monotonic Stack)是一种特殊的栈数据结构,它满足元素的单调性,这种单调性需要自己建立和维护。单调栈分为单调递增栈和单调递减栈两种类型。

单调递增栈的特点是栈内元素从栈底到栈顶依次递增,而单调递减栈则是栈内元素从栈底到栈顶依次递减。

单调栈的主要应用是解决一些与找到元素的下一个更大或更小相关的问题。它通过维护一个递增或递减的栈,可以在常数时间内找到每个元素的下一个更大或更小的元素。

单调栈的基本操作包括:

入栈:将元素压入栈顶,同时保持栈的单调性。

出栈:从栈顶移除元素。

查找:检查栈顶元素,获取当前元素的下一个更大或更小的元素。

单调栈的应用

下次更高温

    vector<int> dailyTemperatures(vector<int>& temperatures) {int size = temperatures.size();vector<int> result(size, 0);stack<int> stack;stack.push(0);for (int i = 1; i < size; ++i){int j = stack.top();if (temperatures[i] > temperatures[j]){while (!stack.empty() && temperatures[i] > temperatures[j]){result[j] = i - j;stack.pop();if (!stack.empty())j = stack.top();}}stack.push(i);}return result;}

下一个更大元素1

	vector<int> nextGreaterElement(vector<int>& nums1, vector<int>& nums2) {int size1 = nums1.size();int size2 = nums2.size();unordered_map<int, int> umap;stack<int> stack;vector<int> result;stack.push(0);for (int i = 1; i < size2; ++i){int j = stack.top();if (nums2[j] < nums2[i]){while (!stack.empty() && nums2[j] < nums2[i]){umap.insert(pair<int, int>(nums2[j], nums2[i]));stack.pop();if (!stack.empty())j = stack.top();}}stack.push(i);}for (int i = 0; i < size1; ++i){if (umap.find(nums1[i]) != umap.end())result.push_back(umap[nums1[i]]);elseresult.push_back(-1);}return result;}

下一个更大元素2

	vector<int> nextGreaterElements(vector<int>& nums) {int size = nums.size();vector<int> dp(size, -1);stack<int> mystack;mystack.push(0);for (int i = 1; i < size; ++i){if (nums[i] > nums[mystack.top()]){while (!mystack.empty() && nums[i] > nums[mystack.top()]){dp[mystack.top()] = nums[i];if (!mystack.empty())mystack.pop();					}}mystack.push(i);}for (int i = 0; i < size; ++i){if (nums[i] > nums[mystack.top()]){while (!mystack.empty() && nums[i] > nums[mystack.top()]){dp[mystack.top()] = nums[i];if (!mystack.empty())mystack.pop();					}}mystack.push(i);}return dp;}

接雨水

	int trap(vector<int>& h){if (h.size() < 3)return 0;stack<int> mystack;int result = 0;mystack.push(0);for (int i = 1; i < h.size(); ++i){if (h[mystack.top()] > h[i])mystack.push(i);else if (h[mystack.top()] < h[i]){while (!mystack.empty() && h[mystack.top()] < h[i]){int mid = mystack.top();mystack.pop();if (!mystack.empty())result += (min(h[mystack.top()], h[i]) - h[mid]) * (i - mystack.top() - 1);				}if (!mystack.empty() && h[mystack.top()] == h[i])mystack.pop();mystack.push(i);}else{mystack.pop();mystack.push(i);}}return result;}

柱状图中最大矩形

	int largestRectangleArea(vector<int>& h) {h.push_back(0);int size = h.size();stack<int> mystack;int result = h[0];mystack.push(0);for (int i = 1; i < size; ++i){if (h[i] == h[mystack.top()]){mystack.pop();}else if (h[i] < h[mystack.top()]){int mid, left;while (!mystack.empty() && h[i] < h[mystack.top()]){mid = mystack.top();mystack.pop();if (!mystack.empty())left = mystack.top();elseleft = -1;result = max(result, (i - left - 1) * h[mid]);}}mystack.push(i);}return result;}

http://www.yayakq.cn/news/638447/

相关文章:

  • 中国现代公路建设有限公司网站论述简述网站制作的步骤
  • world做网站怎么做连接在电商网站上做推广的技巧
  • c 网站开发 视频网站备案 有效期
  • 网站建设规划图网站设计要素
  • 生产企业网站欣赏博客园网站开发
  • 汕头微网站做网站属于软件开发吗
  • php在线购物网站建设wordpress prevent copy paste
  • 网站建设在整体布局有哪些要求wordpress指定分类广告
  • 移动端企业网站模板页面访问升级老域名
  • 建站程序排名模板图片背景
  • 系统开发与网站开发手机3g门户首页
  • 部署个人网站wordpress添加下文件
  • 一键提交网站大连开发区商场
  • 有什么比较好的做简历的网站宁海建设局网站
  • 维护公司网站建设个人网站做镜像
  • 网站建设 常州wordpress文章怎么写
  • 贵州网站开发流程知名的网络推广
  • 秦皇岛网站制作 微商城建设注册网站合集
  • 青岛网站建设青岛博采网络WordPress登录不进
  • 做油漆稀料用哪个网站品牌科技公司排名
  • 长春网站建设公司十佳建立网站的主要步骤
  • 一流高职院校建设网站成全视频免费观看在线看搜索
  • 网站程序调试模式怎么做拼团手机网站开发
  • 天津网站建设哪家有常见的静态网页
  • 软件手机站银川网站建设效果
  • shopify做全品类网站网站开发的项目开发
  • 企业案例网站生成岳阳做网站推荐
  • 合肥商城网站建设企业网站策划案怎么写
  • 音乐中文网站模板发布培训的免费网站模板下载
  • 网站做多个单页链接女生适合学计算机的哪个专业