摘要:
. 两数之和 2. 两数相加 704. 二分查找 232. 用栈实现队列 7. 整数反转 3. 无重复字符的最长子串 4. 寻找两个正序数组的中位数 5. 最长回文子串 217. 存在重复元素 14. 最长公共前缀 15. 三数之和 22. 括号生成 42. 接雨水 20. 有效的括号 70. 爬楼 阅读全文
摘要:
做了LeetCode背包几道题吧,有些感觉了,故来总结一波。本文只针对01背包和完全背包,对于考研复试够用了。其他背包有待补充....... 参考代码随想录Carl和博文 如何区分01背包和完全背包? 每种物品只能取一次(或nums数组中的每个数字只能用一次)为01背包。每种物品有无数个(或nums 阅读全文
摘要:
文章参考自:https://www.cnblogs.com/poloyy/p/15470409.html 作用 ENTRYPOINT 指定镜像的默认入口命令,该入口命令会在启动容器时作为根命令执行,所有其他传入值作为该命令的参数 ENTRYPOINT 的值可以通过 docker run --entr 阅读全文
摘要:
题目 分析 代码 1 class Solution 2 { 3 public: 4 int divide(int x, int y) 5 { 6 typedef long long ll; 7 vector<ll> exp; 8 bool is_minus = false; 9 10 if ((x 阅读全文
摘要:
题目 分析 经典的一道字符串匹配题目,有两种方法,朴素的暴力和KMP算法 这里不仅要能熟练写出朴素算法也要会写KMP算法 KMP算法推荐 y 总的模板,如下: 我们一般字符串从1开始,所以一开始加个空字符 // s[]是长文本,p[]是模式串,n是s的长度,m是p的长度 求模式串的Next数组: f 阅读全文
摘要:
题目 分析 类比LeetCode24.两两交换链表种的节点 代码 1 /** 2 * Definition for singly-linked list. 3 * struct ListNode { 4 * int val; 5 * ListNode *next; 6 * ListNode() : 阅读全文
摘要:
题目 分析 本题思想不难,就是仿照合并两个升序链表的思路,假设 k 个 链表,最长的链表长度为 n,那么只用将 k 个链表表头元素相比找到最小的 插到新的链表表尾即可。这样的话时间复杂度 为 O(n * k)。我们可以进一步优化,k个链表表头元素比较取最小, 我们可以采用堆,这样 取最小的时间为O( 阅读全文
摘要:
题目 分析 关于合法的括号序列的重要推论 一个合法的括号序列的充要条件 :1. 任意前缀中 '(' 的数量 大于等于 ')' 的数量 2. 左右'(' ')'括号的数量相等 n对括号组成的合法括号序列的个数为 卡特兰数 !!! 以上结论非常重要!!! 代码 yxc 老师版本 1 class Solu 阅读全文
摘要:
题目 分析 这里使用了一个技巧,括号之间的ASCII码相差不超过2就匹配 代码 1 class Solution { 2 public: 3 bool isValid(string s) { 4 stack<char>stk; 5 6 for(auto c : s){ 7 if(c == '(' | 阅读全文
摘要:
题目 分析 我的做法:快慢指针,找到倒数第k+1个节点,然后删除当前节点的下一个节点 y总:先求链表长长度,然后正着遍历找到倒数k+1个节点 代码 自己 1 /** 2 * Definition for singly-linked list. 3 * struct ListNode { 4 * in 阅读全文
摘要:
题目 分析 和LeetCode15题差不多的思路,可以暴力搜索,但是时间复杂度太高,考虑用双指针降低时间复杂度 也和LeetCode 11题差不多思路 https://leetcode-cn.com/problems/3sum-closest/solution/zui-jie-jin-de-san- 阅读全文