婷猪

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
  14 随笔 :: 0 文章 :: 0 评论 :: 1477 阅读

2022年11月2日

摘要: 设计一个支持 push ,pop ,top 操作,并能在常数时间内检索到最小元素的栈。 实现 MinStack 类: MinStack() 初始化堆栈对象。void push(int val) 将元素val推入堆栈。void pop() 删除堆栈顶部的元素。int top() 获取堆栈顶部的元素。i 阅读全文
posted @ 2022-11-02 21:38 婷猪 阅读(43) 评论(0) 推荐(0) 编辑

2022年10月15日

摘要: idea:刚开始是打算分类讨论,建立了数字栈和字符栈,按照传入字符当时两个栈的基本情况分类,结果讨论完之后分类太麻烦,导致分析完了之后漏洞不少。我觉得这道题难点在于括号和负号的处理,一开始将导致计算机出错的情况当成了重点,所以思路错了。 idea:下面的题解是遇到一个数处理一个数,无论该数是在括号里 阅读全文
posted @ 2022-10-15 01:50 婷猪 阅读(27) 评论(0) 推荐(0) 编辑

2022年10月7日

摘要: 给定一个只包括 '(',')','{','}','[',']' 的字符串 s ,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。每个右括号都有一个对应的相同类型的左括号。 示例 1: 输入:s = "()"输出:true示例 2: 输入:s = 阅读全文
posted @ 2022-10-07 00:01 婷猪 阅读(7) 评论(0) 推荐(0) 编辑

2022年10月6日

摘要: idea: 刚开始没有思路,被题目弄懵了,我能想到的方法就是先复制不带random指针的链表,之后由表头到表尾再将每个结点的random指针通过循环进行连接,时间复杂度肯定时很高的,具体代码也没有 实现。之后看到题解,经过就牛二虎之力也是堪堪看懂。 idea 之题解: 见注释,也是看了好半天才把注释 阅读全文
posted @ 2022-10-06 23:14 婷猪 阅读(18) 评论(0) 推荐(0) 编辑

2022年10月3日

摘要: idea:参考上一道全部反转,所以反转链表部分代码实现,我觉得重点在于集中不同情况的分类讨论。一共四类情况需要考虑,有前有后,有前无后,有后无前,无前无后。 /** * Definition for singly-linked list. * struct ListNode { * int val; 阅读全文
posted @ 2022-10-03 23:14 婷猪 阅读(18) 评论(0) 推荐(0) 编辑

摘要: idea:对于有环结构的链表,判断环结点位置,开始想到遍历链表,直到某一个结点出现第二遍,所以要进行比对的过程,想到前面学到利用哈希表解决相交链表,可以在这使用。不过对于为什么使用_set不太清楚,哈希表的操作及原理下来也要好好补一下 /** * Definition for singly-link 阅读全文
posted @ 2022-10-03 00:43 婷猪 阅读(13) 评论(0) 推荐(0) 编辑

2022年10月2日

摘要: idea: 烦死了,这个题一直因为创立的指针为空,或者接入结点方法不对,结果将两个小链表搞混乱了,不过具体思路ok。将小值结点成一组,大值结点成一组,最后在首尾相连,实现起来也比较简单 /** * Definition for singly-linked list. * struct ListNod 阅读全文
posted @ 2022-10-02 01:23 婷猪 阅读(9) 评论(0) 推荐(0) 编辑

摘要: 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 (注意给出的三个实例,第一次由于没有注意到另外两个实例,忘记考虑一个链表或两个链表为空的情况了) idea:合并实际就是将一个链表插入另一个链表的过程,在这里我是以头结点值较小的作基准,让另一个插入进去 阅读全文
posted @ 2022-10-02 00:16 婷猪 阅读(21) 评论(0) 推荐(0) 编辑

2022年10月1日

摘要: idea:比较相同信息,首先想到用嵌套for循环解决,方法比较简单,不过时间复杂度高 /** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) 阅读全文
posted @ 2022-10-01 01:34 婷猪 阅读(15) 评论(0) 推荐(0) 编辑

2022年9月30日

摘要: 给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。 示例 1: 输入:head = [1,2,3,4,5]输出:[5,4,3,2,1]示例 2: 输入:head = [1,2]输出:[2,1]示例 3: 输入:head = []输出:[] 提示: 链表中节点的数目范围是 [0, 50 阅读全文
posted @ 2022-09-30 23:29 婷猪 阅读(21) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示