题解 | #设计getMin功能的栈#

设计getMin功能的栈

http://www.nowcoder.com/practice/c623426af02d4c189f92f2a99647bd34

import java.util.*;


public class Solution {
    /**
     * return a array which include all ans for op3
     * @param op int整型二维数组 operator
     * @return int整型一维数组
     */
    public int[] getMinStack (int[][] op) {
        int opt = 0;
        for(int i=0; i<op.length; i++)
            if(op[i].length==1 && op[i][0]==3)
                opt++;
        int[] res = new int[opt];
        int ind = 0;
        Solution stack = new Solution();
        for(int i=0; i<op.length; i++){
            if(1 == op[i][0])
                stack.push(op[i][1]);
            else if(2 == op[i][0])
                stack.pop();
            else
                res[ind++] = stack.getMin();
        }
        return res;
    }
    int[] nums = new int[8];
    int index = 0;
    public void push(int n){
        if(index == (nums.length-1)){
            nums = Arrays.copyOf(nums,nums.length*2);
        }
        nums[index++] = n;
    }
    public int pop(){
        return nums[index--];
    }
    public int getMin(){
        int min = nums[0];
        for(int i=1; i<index; i++){
            min = Math.min(min,nums[i]);
        }
        return min;
    }
}
全部评论

相关推荐

程序员牛肉:继续沉淀吧同学,你这就是纯纯的流水线产品。 差不多的学历+两个烂大街项目。自身学历又不行,现在找啥实习呢。有点太浮躁了。多花点心思搞搞ai,开源和八股。这比你这段时间捣鼓一段小厂实习要好得多;
点赞 评论 收藏
分享
11-28 16:00
已编辑
武汉理工大学 Java
Tom哥981:这份简历是“短期项目硬堆中大型系统技术”的“技术炫技式造假模板”,槽点密集到能当反面教材: ### 1. 「项目时长」和「技术密度」严重脱节,造假痕迹焊死在简历上 两个项目时长分别是**3个月、2个月**,但堆了Spring AI、Elasticsearch、MinIO、Kafka、ShardingSphere、Docker、Sentinel等近20个中大型项目才用的技术——正常情况下,光把这些中间件的文档看完+环境搭好,3个月都不够,更别说实现“AI多轮对话、分库分表、RBAC权限、大模型调用”这些功能。 说白了:你这不是“做项目”,是把“后端技术栈清单”往项目里硬塞,明摆着“只调用了API,没碰过核心逻辑”。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务