C语言 | Leetcode C语言题解之第155题最小栈

题目:

题解:


//单调栈 单调递减
typedef struct 
{//正常 stackint stack[10000];int stackTop;//辅助 stackint minStack[10000];int minStackTop;
} MinStack;MinStack* minStackCreate() 
{MinStack* newStack      = (MinStack *) malloc(sizeof(MinStack));newStack->stackTop      = 0;newStack->minStackTop   = 0;return newStack;
}void minStackPush(MinStack* obj, int val) 
{//先压如数据栈obj->stack[obj->stackTop++] = val;//当前值 小于等于 辅助栈顶值if(!obj->minStackTop || val <= obj->minStack[obj->minStackTop-1] ){obj->minStack[obj->minStackTop++] = val;}}void minStackPop(MinStack* obj)
{if( obj->minStack[obj->minStackTop-1]  == obj->stack[obj->stackTop-1] ){obj->minStackTop--;}obj->stackTop--;
}int minStackTop(MinStack* obj) 
{return obj->stack[obj->stackTop-1]; 
}int minStackGetMin(MinStack* obj) 
{return obj->minStack[obj->minStackTop-1]; 
}void minStackFree(MinStack* obj) 
{free(obj);
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/31439.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

零基础入门办公软件速成学习 沈阳电脑办公软件培训

专业指导&#xff1a;由专业的培训师或讲师提供指导&#xff0c;确保员工能够全面、系统地学习软件的各种功能和技巧。 定制课程&#xff1a;根据公司需求和员工现有水平定制课程内容&#xff0c;确保培训的针对性和实用性。 互动学习&#xff1a;通过实时演示、练习和答疑环节…

Android SurfaceFlinger——SF与HWC交互流程(六)

在上一篇 HWC2On1Adapter 初始化完成后&#xff0c;调用 initWithDevice() 实例化 HwcHal 对象&#xff0c;然后创建高级接口&#xff08;IComposer&#xff09;&#xff0c;使得调用者能够通过这个接口与硬件进行交互。这里我们就来看一下 HwcHal 和 IComposer 的初始化流程。…

到底什么是载波聚合?

载波聚合技术是无线通信系统中的一项关键创新&#xff0c;它极大地提升了数据传输的效率和速度。 这项技术的核心思想其实相当直观&#xff0c;即&#xff1a;如果能够将多个独立的通信路径或连接聚合起来&#xff0c;那么相比单一路径&#xff0c;就能够传输更多的信息。 这就…

mysql设置密码复杂度策略,登录失败次数限制

在配置文件中加入如下配置&#xff0c;重启mysql服务 [mysqld] #密码复杂度插件 plugin-load-addvalidate_password.so validate-passwordFORCE_PLUS_PERMANENT validate_password_policy2 # 0简单 1普通 2困难 validate_password_length9 # 密码长度限制 #登录失败次数、时间…

描述React Hooks中的useMemo和useCallback的区别和用途。

React Hooks API中的useMemo和useCallback都是用于优化性能的钩子&#xff0c;但它们的用途和工作方式略有不同&#xff1a; 推荐大家看看我过往的文章 useMemo useMemo是一个性能优化钩子&#xff0c;它返回一个记忆化的值。useMemo可以避免在组件渲染时进行昂贵的计算或操作…

一文读懂数据仓库ODS层

数据仓库一般分为三层&#xff0c;分别为数据贴源层&#xff08;ODS&#xff0c;Operation Data Store&#xff09;、数据公共层&#xff08;CDM&#xff0c;Common Data Model&#xff09;和数据应用层&#xff08;ADS&#xff0c;Application Data Service&#xff09;。其中…

方舟云康亏损收窄:三年近10亿销售成本,平均付费及月活仍大幅承压

《港湾商业观察》施子夫 三度递表后&#xff0c;终于通过聆讯&#xff0c;方舟云康控股有限公司(以下简称&#xff0c;方舟云康)有望近期内挂牌港交所。方舟云康的国内运营主体为广州方舟云康信息科技集团有限公司、广州方舟医药有限公司。 值得关注的是&#xff0c;亏损的难…

shiro整合springboot报错--解决方法

代码下载 报错信息 //测试权限认证访问http://localhost:8080/myController/userLogin?namezhangsan&pwd123报错 org.apache.shiro.UnavailableSecurityManagerException: No SecurityManager accessible to the calling code, either bound to the org.apache.shiro.ut…

Python项目Django框架发布相关

1.Nginx配置 server { listen 80; server_name 域名地址;location / { uwsgi_pass 0.0.0.0:4563;// 运行地址include uwsgi_params;} location /static{ // 静态文件路径alias /www/wwwroot/djserverproject/static;}}server { listen 443; server_name 域名地址;ssl_certific…

@/utils/china里面的详细数据

/utils/china里面的详细数据 (function (root, factory) {if (typeof define "function" && define.amd) {// AMD. Register as an anonymous module.define(["exports", "echarts"], factory);} else if (typeof exports "obje…

TS中获取函数的参数类型、函数的返回值类型、构造函数的参数类型

背景&#xff1a;通常在业务中我们需要封装一些公共函数或者引入第三方库的函数、类&#xff0c;在TS语法环境下&#xff0c;如何在调用函数处给定义的变量进行类型定义&#xff1f;是需要全局定义变量类型亦或是各自定义&#xff1f;当然都不需要&#xff0c;我们可以通过ts中…

整理好了!2024年最常见 20 道设计模式面试题(十)

上一篇地址&#xff1a;整理好了&#xff01;2024年最常见 20 道设计模式面试题&#xff08;九&#xff09;-CSDN博客 十九、访问者模式是如何分离算法与操作对象的&#xff1f; 访问者模式&#xff08;Visitor Pattern&#xff09;是一种行为型设计模式&#xff0c;它允许我…

Python中文自然语言处理(NLP)中文分词工具库之pkuseg使用详解

概要 在中文自然语言处理(NLP)中,分词是一个基础且关键的任务。pkuseg 是由北京大学开发的一个中文分词工具,专为处理现代汉语而设计。它采用了先进的深度学习技术,能够准确地进行中文分词,同时支持自定义词典和多领域分词。本文将详细介绍 pkuseg 库,包括其安装方法、…

《图数据库:理论与实践》书籍销售火爆,二次印刷重磅来袭!

好书共享&#xff0c;就在此刻&#xff01; 由创邻科技联合电子工业出版社匠心打磨三年&#xff0c;最终成稿的图数据库书籍《图数据库&#xff1a;理论与实践》发行上线后&#xff0c;获得了广泛好评&#xff0c;各平台销量迅速破千&#xff0c;并荣登京东 “数据库图书榜”热…

给PDF添加书签的通解-姜萍同款《偏微分方程》改造手记

背景 网上找了一本姜萍同款的《偏微分方程》&#xff0c;埃文斯&#xff0c;英文版&#xff0c;可惜没有书签&#xff0c;洋洋七百多页&#xff0c;没有书签&#xff0c;怎么读&#xff1f;用福昕编辑器自然能手工一个个加上&#xff0c;可是劳神费力&#xff0c;非程序员所为…

Spock使用Spy来Mock内部调用的方法

使用Spy来Mock内部调用的方法 如果使用Spy不生效参考 使用前先看看哪些场景不生效,避免浪费太多时间,我曾经就是mock一个方法折腾两个小时都没弄出来,后来问了 小美智能助理 ,告诉我其中private修饰的方法不生效..我把private改成protected​ 修饰之后, 再次重启单测,立马就好…

【Nprogress】页面跳转进度条

【Nprogress】页面跳转进度条 介绍安装引入并简单使用基本用法配置项常用方法 参考文档&#xff1a; 【博主&#xff1a;码农键盘上的梦】vue使用Nprogress进度条功能实现 【博主&#xff1a;夜幕506】vue项目的进度条插件 – nprogress 【官方项目地址】https://www.npmjs.com…

Spring Boot高级配置与自定义Starter详解

介绍 Spring Boot是一个用于简化Spring应用开发的框架&#xff0c;它通过提供一系列的默认配置和自动化的功能&#xff0c;极大地降低了项目的复杂度和开发成本。本文将深入探讨Spring Boot的高级配置和自定义Starter的实现&#xff0c;帮助开发者更好地理解和应用这些特性。 …

【C语言】数据的存储

本章重点 1. 数据类型详细介绍 2. 整形在内存中的存储&#xff1a;原码、反码、补码 3. 大小端字节序介绍及判断 4. 浮点型在内存中的存储解析 Ⅰ、数据类型介绍 前面我们已经学习了基本的内置类型&#xff1a; 空间大小&#xff08;字节&#xff09; char //字…

别只看影响因子了!又1本毕业神刊偷偷被On Hold了!请谨慎投递

【SciencePub学术】昨日&#xff0c;2023JCR正式发布&#xff0c;现在影响因子的话题依旧是“热搜第一”。大家可以根据自己的研究方向&#xff0c;参考最新发布的JCR报告进行投稿选刊。若大家对于投稿选刊方面有任何问题&#xff0c;都可联系张老师为您解答&#xff01; 相关…