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

php网站开发概念广州门户网站建设方案

php网站开发概念,广州门户网站建设方案,网站建设 郑州,如果自己做网站卖设备这里写自定义目录标题 一、优先队列与单调队列二、优先队列2.1 概念2.2 增删查 判空2.3 示例代码 三、双端队列四、单调队列4.1 单调递增队列4.2 单调递减队列 一、优先队列与单调队列 二、优先队列 2.1 概念 一种特殊的队列,它与普通队列的主要区别在于元素的出…

这里写自定义目录标题

  • 一、优先队列与单调队列
  • 二、优先队列
    • 2.1 概念
    • 2.2 增删查 + 判空
    • 2.3 示例代码
  • 三、双端队列
  • 四、单调队列
    • 4.1 单调递增队列
    • 4.2 单调递减队列

一、优先队列与单调队列

二、优先队列

2.1 概念

一种特殊的队列,它与普通队列的主要区别在于元素的出队顺序是根据元素的优先级来决定的,而不是按照元素进入队列的顺序。具体来说,优先队列中的元素具有优先级,优先级较高的元素会比优先级较低的元素先被移除。
原理: 大根堆(默认大根堆)或者小根堆。

2.2 增删查 + 判空

1.增: push()
2.删: pop()
3.查: top()
4.元素个数: size()
5.判空: empty()

2.3 示例代码

#include <iostream>
#include <queue>int main() {// 创建一个优先队列,默认使用最大堆std::priority_queue<int> pq;// 向优先队列中插入元素pq.push(10);pq.push(5);pq.push(20);pq.push(15);pq.pop();// 输出并删除优先队列中的元素(按优先级高低)while (!pq.empty()) {std::cout << pq.top() << " ";  // 输出堆顶元素pq.pop();  // 删除堆顶元素}//15 10 5return 0;
}

三、双端队列

  • 增:push_back() / push_front()
  • 删:pop_back() / pop_front()
  • 查:back() / front() / at() / []
  • 判空:size() / empty()
#include <iostream>
#include <deque>using namespace std;int main() {// 创建一个双端队列deque<int> dq;// 向队列两端插入元素dq.push_front(10);  // 前端插入 10dq.push_back(20);   // 后端插入 20dq.push_front(5);   // 前端插入 5dq.push_back(30);   // 后端插入 30//5 10 20 30// 输出队列的大小cout << "队列的大小: " << dq.size() << endl;// 访问队列的前端和后端元素cout << "队列前端元素: " << dq.front() << endl;cout << "队列后端元素: " << dq.back() << endl;// 删除队列前端和后端的元素dq.pop_front();  // 删除前端元素dq.pop_back();   // 删除后端元素//10 20// 输出删除后的队列cout << "删除后的队列: ";for (auto it = dq.begin(); it != dq.end(); ++it) {cout << *it << " ";}cout << endl;// 使用 at() 访问元素cout << "索引 0 处的元素: " << dq.at(0) << endl;// 使用下标运算符访问元素cout << "索引 0 处的元素: " << dq[0] << endl;// 检查队列是否为空if (dq.empty()) {cout << "队列为空" << endl;} else {cout << "队列不为空" << endl;}// 清空队列dq.clear();cout << "清空后的队列大小: " << dq.size() << endl;return 0;/*队列的大小: 4队列前端元素: 5队列后端元素: 30删除后的队列: 10 20 索引 0 处的元素: 10索引 0 处的元素: 10队列不为空清空后的队列大小: 0*/   
}

四、单调队列

一般是基于双端队列(deque)实现的
应用:滑动窗口,区间最值方法。

4.1 单调递增队列

1.概念

  • 队列中的元素按从小到大的顺序排列。
  • 每次插入新元素时,保证队列的元素保持递增顺序。如果新元素小于队列中的某些元素,则删除这些元素,直到新元素大于队列的尾部元素。

示例

vector<int> minSlidingWindow(vector<int>& nums, int k) {vector<int> result;deque<int> dq;  // 单调递增队列for (int i = 0; i < nums.size(); i++) {// 移除不在窗口中的元素if (!dq.empty() && dq.front() < i - k + 1) {dq.pop_front();}// 移除队尾元素,使队列保持递增while (!dq.empty() && nums[dq.back()] >= nums[i]) {dq.pop_back();}// 加入新元素dq.push_back(i);// 队头元素是当前窗口的最小值if (i >= k - 1) {result.push_back(nums[dq.front()]);}}return result;
}

4.2 单调递减队列

1.概念

  • 队列中的元素按从大到小的顺序排列。
  • 每次插入新元素时,保证队列的元素保持递减顺序。如果新元素大于队列中的某些元素,则删除这些元素,直到新元素小于队列的尾部元素。

示例

vector<int> maxSlidingWindow(vector<int>& nums, int k) {vector<int> result;deque<int> dq;  // 单调递减队列for (int i = 0; i < nums.size(); i++) {// 移除不在窗口中的元素if (!dq.empty() && dq.front() < i - k + 1) {dq.pop_front();}// 移除队尾元素,使队列保持递减while (!dq.empty() && nums[dq.back()] <= nums[i]) {dq.pop_back();}// 加入新元素dq.push_back(i);// 队头元素是当前窗口的最大值if (i >= k - 1) {result.push_back(nums[dq.front()]);}}return result;
}

文章转载自:

http://c8ED9CRv.srgsb.cn
http://EUQRxstc.srgsb.cn
http://lrTWACYo.srgsb.cn
http://ulJFrflt.srgsb.cn
http://tu6rAIVC.srgsb.cn
http://rbRtxMIF.srgsb.cn
http://ftAbG2Am.srgsb.cn
http://V6AI9rFh.srgsb.cn
http://hNUX8zay.srgsb.cn
http://70Dmp64y.srgsb.cn
http://o3gLZPSf.srgsb.cn
http://LPdK40kl.srgsb.cn
http://DKBJhe6s.srgsb.cn
http://9SDAFaYx.srgsb.cn
http://nyQDXU9q.srgsb.cn
http://5efrHhwn.srgsb.cn
http://BtzcUh0o.srgsb.cn
http://kL7ASzOG.srgsb.cn
http://i1VBS2XY.srgsb.cn
http://KpBZGLcM.srgsb.cn
http://Qcv6qB3r.srgsb.cn
http://yf9yWqIX.srgsb.cn
http://pdeXp1EJ.srgsb.cn
http://cz2vqWjj.srgsb.cn
http://cZv79346.srgsb.cn
http://XeGnwVQT.srgsb.cn
http://FcEYPxCi.srgsb.cn
http://zJJAMlVH.srgsb.cn
http://Lk6nhJIk.srgsb.cn
http://aWbKWnPd.srgsb.cn
http://www.dtcms.com/wzjs/607644.html

相关文章:

  • 电子商务网站建设的范围是什么asp网站开发视频
  • 石家庄做网络推广的网站redis 缓存 wordpress
  • j2ee网站开发实例江苏永坤建设有限公司网站
  • 廊坊网站建网站规划建设方案农业绿化风格
  • 网站服务器失去响应什么意思商城网站做推广方案
  • 做网站有哪些技术杭州网站优化体验
  • 网站建设吸引客户的我们是设计师 网站建设专家
  • 企业网站建设管理平台专业招牌制作价格
  • 义乌来料加工网保定网站关键词优化
  • 珠宝公司网站模版如何套用wordpress的源码
  • 高端网站建设浩森宇特网页设计素材收集
  • 温岭市建设局网站审批公示上海优化排名网站
  • 免费注册域名的网站公司起名字大全免费打分
  • 网站下面的站长统计很逗上海网站推广排名
  • 洛阳建设网站手机网页制作尺寸
  • 游戏网站风格新公司起名大全免费
  • 深圳实力网站建设广州建网站
  • 娄底网站建设优化企业同城招聘工作信息附近
  • 做商城微信网站小程序定制开发传智科技
  • 怎么用手机创建网站做网站放网站广告
  • 网站开发的英文文献网站建设7个主要流程图
  • 开店装修话做那个网站找工人整站优化费用
  • h5网站开发软件有哪些旅游网站logo
  • 杭州模板网站制作方案3d效果图设计制作软件
  • 网站防止采集湛江免费企业建站
  • 网页升级重要通知请拿好笔记本厦门做网站优化
  • 便宜做网站怎么样微信电脑版下载官网
  • 首都产业建设集团网站校园官方网站如何制作
  • 那个网站有免费的模板教育类app开发价格表
  • 网站建设和维护怎么学智能网站平台