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

深圳网站建设学校企业网络营销推广案例

深圳网站建设学校,企业网络营销推广案例,手表商城网站建设,h5网站页面目录 用两个栈实现队列 用两个栈实现队列 刷题链接: https://www.nowcoder.com/practice/54275ddae22f475981afa2244dd448c6 题目描述 思路一: 使用两个栈来实现队列的功能。栈 1 用于存储入队的元素,而栈 2 用于存储出队的元素。 1.push…

目录

  • 用两个栈实现队列

用两个栈实现队列

刷题链接
https://www.nowcoder.com/practice/54275ddae22f475981afa2244dd448c6

题目描述
在这里插入图片描述

思路一
使用两个栈来实现队列的功能。栈 1 用于存储入队的元素,而栈 2 用于存储出队的元素。
1.push方法将元素压入栈 1。
2.pop方法首先检查栈 2 是否为空。如果为空,则将栈 1 中的所有元素移到栈 2。然后,弹出栈 2 中的顶部元素并返回。

在这里插入图片描述

复杂度分析

时间复杂度:在最坏情况下,pop 操作的时间复杂度是 O(n),但在平均情况下,当栈2中有元素时,pop 操作的时间复杂度是 O(1)。这是因为在平均情况下,元素不会每次都从栈1移动到栈2。总体而言,这个实现的 push 操作是 O(1),而 pop 操作的最坏情况下是 O(n),平均情况下是 O(1)。
空间复杂度: O(n),辅助栈的空间,最差的情况下两个栈共存储N个元素。

python3

# -*- coding:utf-8 -*-
class Solution:def __init__(self):self.stack1 = []self.stack2 = []def push(self, x: int) -> None:# 入队时直接将元素压入 stack1self.stack1.append(x)def pop(self) -> int:# 如果 stack2 为空,将 stack1 中的元素依次弹出并压入 stack2,实现队列的先进先出if not self.stack2:while self.stack1:self.stack2.append(self.stack1.pop())# 弹出 stack2 的栈顶元素,即队列头部的元素return self.stack2.pop()

C++

class Solution {public:// 入队操作,将元素压入 stack1void push(int x) {stack1.push(x);}// 出队操作,实现队列的先进先出int pop() {// 如果 stack2 为空,将 stack1 中的元素依次弹出并压入 stack2if (stack2.empty()) {while (!stack1.empty()) {stack2.push(stack1.top());stack1.pop();}}// 弹出 stack2 的栈顶元素,即队列头部的元素int frontElement = stack2.top();stack2.pop();return frontElement;}private:stack<int> stack1;stack<int> stack2;
};
http://www.hrbkazy.com/news/42929.html

相关文章:

  • 做外贸翻译用哪个网站网站测速工具
  • 网站建设链接上海关键词排名优化价格
  • 一个域名做多个网站国外搜索引擎
  • 外链发布平台有哪些seo产品优化免费软件
  • 可以做渗透的网站恶意点击软件哪几种
  • 怎样注册网站帐号申请微信营销的案例
  • 品牌网站建设相关问题进入百度app
  • 免费广告行业网站建设武汉网络推广有限公司
  • 小企网站建设解决方案软文写手兼职
  • 三亚网站建设介绍上海网络营销seo
  • 多语言外贸网站建设上海公关公司
  • 域名 不做网站网络推广经验
  • wordpress 知识库主题seo建站平台哪家好
  • 义乌1688网站网页设计短视频推广渠道有哪些
  • 做网站神器sem广告
  • 网站建设营销攻略快速刷排名的软件最好
  • 域名过期网站还有用吗最新新闻热点大事件
  • 移动端手机网站制作免费新闻源发布平台
  • 网站制造公司模板建站常规流程
  • 同学聚会怎么样做网站各行业关键词
  • wordpress头像上传100kbseo好找工作吗
  • 网站建设包括哪几个方面乔拓云智能建站
  • 效果图网站名字山东网站seo
  • 网站seo模块谷歌优化排名怎么做
  • 设计图ai生成seo智能优化系统
  • 一个网站建设初期的成本谷歌外贸平台
  • 用ai做网站seo联盟
  • 高中教做网站的软件广告代运营
  • python做网站表白百度推广托管公司
  • b2b2c是什么意思谷歌seo外链平台