- 博客(3)
- 收藏
- 关注
原创 牛客网剑指offer总结(二)
队列和栈都是比较特殊的线性存储结构,可以利用他们的特殊性质处理问题,当遇到关于序列顺序,存储不同的大小值特殊值,存储多个需要进行筛选的值,都可以尝试使用栈和队列。借助数组进行双循环,一次循环走窗口大小的值,一次循环找窗口内的最大值并存入数组中,但是这样的做法比较费时,开销较大;将数组1中的元素入栈,入栈的同时与数组2中的元素进行对比,若相同则出栈,不同继续判断。在入栈的时候就将入栈的元素与min栈的top元素进行比较,将较小的数值存入min栈,保持min栈的top元素为最小值即可。5. 滑动窗口的最大值。
2023-06-15 16:21:38
141
1
原创 牛客网剑指offer总结(一)(c++)
创建新链表存储合并后的链表,从头到尾循环读取两个链表每个结点的值并比较大小,按照排序顺序存储到新链表,当其中一个链表读取完毕,随后将另一个链表剩下未被读取的结点值直接存储到新链表即可。在旧链表的每个节点之后都添加一个结点,其新的结点值与旧链表的结点值相同,随后按照旧链表的链接方向,在新节点上进行链接,最后从中拆分出新链表即可。找到当前链表结点的前驱节点及后继节点,将当前节点的前驱节点与后继节点进行交换即可,循环整条链表的每个节点。借助一个数组,将链表结点值存放到这个数组中,随后将数组反向输出。
2023-06-15 14:27:25
216
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人