随笔分类 -  算法知识

学习笔记算法知识
摘要:滑动窗口题目: 无重复字符的最长子串 串联所有单词的子串 最小覆盖子串 至多包含两个不同字符的最长子串 长度最小的子数组 滑动窗口最大值 字符串的排列 最小区间 最小窗口子序列 什么是滑动窗口? 其实就是一个队列,比如题中的 abcabcbb,进入这个队列(窗口)为 abc 满足题目要求,当再进入 阅读全文
posted @ 2021-01-21 19:36 哥嫌远儿 阅读(100) 评论(0) 推荐(0)
摘要:一、穷举框架 首先,面临一个问题:如何穷举? 递归其实是符合我们思考的逻辑的,一步步推进,遇到无法解决的就丢给递归,一不小心就做出来了,可读性还很好。缺点就是一旦出错,你也不容易找到错误出现的原因。 而这里,我们不用递归思想进行穷举,而是利用「状态」进行穷举。我们具体到每一天,看看总共有几种可能的「 阅读全文
posted @ 2020-11-28 15:40 哥嫌远儿 阅读(202) 评论(0) 推荐(0)
摘要:一、数据结构的存储方式 数据结构的存储方式只有两种:数组(顺序存储)和链表(链式存储)。 「队列」、「栈」这两种数据结构既可以使用链表也可以使用数组实现。用数组实现,就要处理扩容缩容的问题;用链表实现,没有这个问题,但需要更多的内存空间存储节点指针。 「图」的两种表示方法,邻接表就是链表,邻接矩阵就 阅读全文
posted @ 2020-11-26 10:10 哥嫌远儿 阅读(159) 评论(0) 推荐(0)
摘要:一、动态规划题目特点 1.计数 有多少种方式走到右下角 有多少种方法选出k个数使得和是Sum +++ 2.求最大最小值 从左上角走到右下角路径的最大数字和 最长上升子序列长度 min/max 3.求存在性 取石子游戏,先手是否必胜 能不能选出k个数使得和是Sum or/and 二、动态规划组成部分 阅读全文
posted @ 2020-11-17 14:28 哥嫌远儿 阅读(89) 评论(0) 推荐(0)