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

国外设计网站 绿色的做网站开发有前途吗

国外设计网站 绿色的,做网站开发有前途吗,手机怎么进入pc端,wordpress签到功能【问题描述】[中等] 定义栈的数据结构#xff0c;请在该类型中实现一个能够得到栈的最小元素的 min 函数在该栈中#xff0c;调用 min、push 及 pop 的时间复杂度都是 O(1)。示例:MinStack minStack new MinStack(); minStack.push(-2); minStack.push(0); minStack.push(-…【问题描述】[中等] 定义栈的数据结构请在该类型中实现一个能够得到栈的最小元素的 min 函数在该栈中调用 min、push 及 pop 的时间复杂度都是 O(1)。示例:MinStack minStack new MinStack(); minStack.push(-2); minStack.push(0); minStack.push(-3); minStack.min(); -- 返回 -3. minStack.pop(); minStack.top(); -- 返回 0. minStack.min(); -- 返回 -2. 【解答思路】 1. 单栈 时间复杂度O(N^2) 空间复杂度O(1) class MinStack {private LinkedListInteger data;private int min;/** initialize your data structure here. */public MinStack() {data new LinkedListInteger();min Integer.MAX_VALUE;}public void push(int x) {if(x min){data.add(min);min x;}data.add(x);}public void pop() {if(data.pollLast() min){//flush the minmin data.pollLast();}}public int top() {return data.peekLast();}public int min() {return min;} }/*** Your MinStack object will be instantiated and called as such:* MinStack obj new MinStack();* obj.push(x);* obj.pop();* int param_3 obj.top();* int param_4 obj.min();*/ Stack class MinStack {private StackInteger stack;private int min;/** initialize your data structure here. */public MinStack() {stack new Stack();min Integer.MAX_VALUE;}public void push(int x) {if(x min ){//注意这里要使用号stack.push(min);//在每一个min入栈之前将它前一个min入栈min x;}stack.push(x);}public void pop() {if(stack.pop() min){//如果取出来的是当前min就将压在它低下的前一个min出栈min stack.pop();}}public int top() {return stack.peek();}public int min() {return min;} } 2. 双栈辅助栈 时间复杂度O(1) 空间复杂度O(N) class MinStack {StackInteger stack;StackInteger minStack;/** initialize your data structure here. */public MinStack() {stack new Stack();minStack new Stack();minStack.push(Integer.MAX_VALUE);}public void push(int x) {stack.push(x);if(x minStack.peek()){minStack.push(x);}}public void pop() {int min minStack.peek();if(stack.peek() min){minStack.pop();}stack.pop();}public int top() {return stack.peek();}public int min() {return minStack.peek();} }/*** Your MinStack object will be instantiated and called as such:* MinStack obj new MinStack();* obj.push(x);* obj.pop();* int param_3 obj.top();* int param_4 obj.min();*/ class MinStack {StackInteger A, B;public MinStack() {A new Stack();B new Stack();}public void push(int x) {A.add(x);if(B.empty() || B.peek() x)B.add(x);}public void pop() {if(A.pop().equals(B.peek()))B.pop();}public int top() {return A.peek();}public int min() {return B.peek();} } 【总结】 1.Stack 的常用方法 push( num) 入栈 pop() 栈顶元素出栈 empty() 判定栈是否为空 peek() 获取栈顶元素 search(num) 判端元素num是否在栈中如果在返回1不在返回-1。 注意pop()和peek()的区别。pop()会弹出栈顶元素并返回栈顶的值peek()只是获取栈顶的值但是并不会把元素从栈顶弹出来 2.Queue Queue是在两端出入的List所以也可以用数组或链表来实现。 add 增加一个元索 如果队列已满则抛出一个IIIegaISlabEepeplian异常remove 移除并返回队列头部的元素 如果队列为空则抛出一个NoSuchElementException异常element 返回队列头部的元素 如果队列为空则抛出一个NoSuchElementException异常offer 添加一个元素并返回true 如果队列已满则返回falsepoll 移除并返问队列头部的元素 如果队列为空则返回nullpeek 返回队列头部的元素 如果队列为空则返回nullput 添加一个元素 如果队列满则阻塞take 移除并返回队列头部的元素 如果队列为空则阻塞 注意 remove、element、offer 、poll、peek 其实是属于Queue接口。 add remove element操作在队满或者队空的时候会报异常。 offer poll peek 在队满或者队空的时候不会报异常。 put take操作属于阻塞操作。队满队空均会阻塞。 3.LinkedList 以双向链表实现的LinkedList既是List也是Queue。它是唯一一个允许放入null的Queue。 4. 单栈双栈思想均要掌握 面试算法常考题 参考链接https://leetcode-cn.com/problems/bao-han-minhan-shu-de-zhan-lcof/solution/mian-shi-ti-30-bao-han-minhan-shu-de-zhan-fu-zhu-z/ 参考链接https://leetcode-cn.com/problems/bao-han-minhan-shu-de-zhan-lcof/solution/java-jian-ji-wu-fu-zhu-zhan-by-rabbitzhao/ 参考链接https://leetcode-cn.com/problems/bao-han-minhan-shu-de-zhan-lcof/solution/shuang-zhan-wei-hu-jie-fa-ji-linkedlistjie-fa-by-c/
http://www.zqtcl.cn/news/238534/

相关文章:

  • 淄博网站制作营销wordpress 轮播图自适应
  • 响应式网站切图网站入口首页
  • 静态网站开发考虑什么网上推广引流的有用吗?
  • 网站建设包括哪些东西工业设计最好的公司
  • 网站建设方案书 模板网站地址做图标
  • 财务公司网站模板wordpress域名文件夹
  • 网站标题写什么作用是什么网络推广学校培训
  • 看室内设计效果图网站网站建设需要条件
  • html教程网站做网站用哪个服务器
  • 济南网站建设 推搜点江阴响应式网站建设
  • 网站建设在windos的设置crm平台
  • 企业如何建设网站高端商城网站建设
  • 怎么制作app网站以下什么是网页制作软件
  • 网站定制一般价格多少石家庄做网站wsjz
  • 如何建立外卖网站网站可以做的活动推广
  • 手机号注册网站cms影视源码采集
  • 网站建设网页设计培训班连云港seo优化
  • 成都网站建设公司招聘定制衣服
  • 做访问量高的网站如何建立公司网站推广
  • 做公司的网站有哪些简述企业网站建设的流程
  • 网站免费获取验证码怎么做软件开发的工作
  • 萌宝宝投票网站怎么做正规网站建设多少费用
  • 产权交易网站建设方案耐克网站建设的历程
  • 网站建设投入及费用wordpress 收录插件
  • 东莞网站制作个性化清溪网站仿做
  • 简单展示网站模板天津建设网站哪家好
  • 建个人网站赚钱多吗福建省住房和城乡建设厅网站首页
  • 网站建设课程设计实训心得seo关键词优化方案
  • 逸阳网站建设的目标郑州建设电商网站
  • 有了网址怎么做网站上海网站推广服务