Leetcode之PHP版题目解析(155. Min Stack)

Leetcode · curry · 于 24天前 发布 · 25 次阅读

题目描述

设计一个支持push,pop,top以及在恒定时间内检索最小元素的堆栈。

题目示例

MinStack minStack = new MinStack();
minStack.push(-2);
minStack.push(0);
minStack.push(-3);
minStack.getMin();   --> Returns -3.
minStack.pop();
minStack.top();      --> Returns 0.
minStack.getMin();   --> Returns -2.

题目思路

这里的push就是将元素压入栈顶(PHP中的array_unshift),pop就是弹出栈顶元素(PHP中的array_shift),然后getMin()用来获取数组中最小的数.

实现代码(第一版简单粗暴)

 /**
 * initialize your data structure here.
 */
private $data=[];

function __construct() {
   
}

/**
 * @param Integer $x
 * @return NULL
 */
function push($x) {
     array_unshift($this->data,$x);
    
}

/**
 * @return NULL
 */
function pop() {
      array_shift($this->data);
}

/**
 * @return Integer
 */
function top() {
        return $this->data[0];
}

/**
 * @return Integer
 */
function getMin() {
   return min($this->data);
}

本文由 curry 创作,采用 知识共享署名 3.0 中国大陆许可协议 进行许可。 可自由转载、引用,但需署名作者且注明文章出处。

共收到 0 条回复 php 算法
没有找到数据。
添加回复 (需要登录)
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册
吴亲库里的深夜食堂