随笔分类 -  剑指offer

算法学习
摘要:题目链接:https://leetcode-cn.com/problems/fan-zhuan-lian-biao-lcof/ 指针 遍历链表,把链表的每个节点依次逆置; 当头结点不为空时: 1. 备份头结点的下一个节点 2. 头结点的下一个节点更新为新的头结点 3. 新的头结点更新为头结点 4. 阅读全文
posted @ 2020-04-06 21:19 NaughtyCoder 阅读(91) 评论(0) 推荐(0)
摘要:题目链接:https://leetcode-cn.com/problems/he-bing-liang-ge-pai-xu-de-lian-biao-lcof/ 遍历 当两个链表都不为空时,遍历两个链表,依次比较两个节点的值,将较小的节点的插入到新链表后面; 最后检查一下哪个链表还没有遍历完,直接将 阅读全文
posted @ 2020-04-02 21:33 NaughtyCoder 阅读(70) 评论(0) 推荐(0)
摘要:题目链接:https://leetcode-cn.com/problems/liang-ge-lian-biao-de-di-yi-ge-gong-gong-jie-dian-lcof/ 双指针 /** * Definition for singly-linked list. * struct Li 阅读全文
posted @ 2020-04-02 21:27 NaughtyCoder 阅读(59) 评论(0) 推荐(0)
摘要:题目链接:https://leetcode-cn.com/problems/dui-lie-de-zui-da-zhi-lcof/ 单调队列 额外维护一个单调队列(双端队列): 1. max_value: max_q为空返回-1,不空返回对头元素 2. push_back: value入队,判断va 阅读全文
posted @ 2020-04-02 20:32 NaughtyCoder 阅读(112) 评论(0) 推荐(0)
摘要:题目链接:https://leetcode-cn.com/problems/hua-dong-chuang-kou-de-zui-da-zhi-lcof/ 单调队列 时间复杂度:O(n) 空间复杂度:O(k):双端队列中最多同时存储k个元素,即窗口大小 class Solution { public 阅读全文
posted @ 2020-04-02 20:02 NaughtyCoder 阅读(77) 评论(0) 推荐(0)
摘要:题目链接:https://leetcode-cn.com/problems/zhan-de-ya-ru-dan-chu-xu-lie-lcof/ 栈 两种操作:(二者只能有一个执行) 1)将下一个数加入栈中; 2)将当前栈顶元素弹出; 判断当前栈顶元素与下一个要输出的数是否一样: 一样,将栈顶元素弹 阅读全文
posted @ 2020-03-29 12:27 NaughtyCoder 阅读(79) 评论(0) 推荐(0)
摘要:题目链接:https://leetcode cn.com/problems/bao han minhan shu de zhan lcof/ 栈 维护两个栈:栈st存储所有元素,minSt是一个单调栈,栈顶元素为min 1. 入栈:st.push(x); 若minSt.top = x或minSt为空 阅读全文
posted @ 2020-03-29 12:05 NaughtyCoder 阅读(70) 评论(0) 推荐(0)
摘要:题目链接:https://leetcode cn.com/problems/yong liang ge zhan shi xian dui lie lcof/ 栈 两个栈,st栈,cache缓存栈; 1. 入队:直接压入st中; 2. 出队: 1)若cache为空:依次将st中的元素弹出并压入cac 阅读全文
posted @ 2020-03-29 11:10 NaughtyCoder 阅读(75) 评论(0) 推荐(0)
摘要:题目链接:https://leetcode-cn.com/problems/lian-biao-zhong-dao-shu-di-kge-jie-dian-lcof/ 遍历 时间复杂度:O(N) 空间复杂度: O(1) class Solution { public: ListNode* getKt 阅读全文
posted @ 2020-03-27 20:41 NaughtyCoder 阅读(66) 评论(0) 推荐(0)