fFee-ops's Blog
滑动窗口模板 滑动窗口模板
public void minWindow(String s, String t) { Map<Character, Integer> need = new HashMap<>();
2021-02-22
76. 最小覆盖子串(滑动指针) 76. 最小覆盖子串(滑动指针)
76. 最小覆盖子串 题目 解题思路 代码 题目给你一个字符串 s 、一个字符串 t 。返回 s 中涵盖 t 所有字符的最小子串。如果 s 中不存在涵盖 t 所有字符的子串,则返回空字符串 “” 。 注意:如果 s 中存在这样的子串,
2021-02-22
8 大排序算法总结 8 大排序算法总结
面试中的 8 大排序算法总结 冒泡排序 选择排序 插入排序 快速排序 堆排序 希尔排序 归并排序 基数排序 总结 冒泡排序冒泡排序是最简单的排序之一了,其大体思想就是通过与相邻元素的比较和交换来把小的数交换到最前面。这个过程类似于水泡
773. 滑动谜题(BFS) 773. 滑动谜题(BFS)
773. 滑动谜题 题目 解题思路 代码 题目在一个 2 x 3 的板上(board)有 5 块砖瓦,用数字 1~5 来表示, 以及一块空缺用 0 来表示. 一次移动定义为选择 0 与一个相邻的数字(上下左右)进行交换. 最终当板 b
2021-02-18
752. 打开转盘锁(BFS) 752. 打开转盘锁(BFS)
752. 打开转盘锁 题目 解题思路 代码 题目你有一个带有四个圆形拨轮的转盘锁。每个拨轮都有10个数字: ‘0’, ‘1’, ‘2’, ‘3’, ‘4’, ‘5’, ‘6’, ‘7’, ‘8’, ‘9’ 。每个拨轮可以自由旋转:例如
2021-02-18
22. 括号生成(回溯算法) 22. 括号生成(回溯算法)
22. 括号生成 题目 解题思路 代码 题目数字 n 代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且 有效的 括号组合。 解题思路这题套用回溯算法的模板就可以了。但是有两个注意的点就是回溯的结束条件。 代码/* 本题
2021-02-18
TLS、SSL原理解析 TLS、SSL原理解析
TLS、SSLhttps协议就是建立在TLS、SSL之上的。
2021-02-17
37. 解数独(回溯算法) 37. 解数独(回溯算法)
37. 解数独 题目 解题思路 代码 题目编写一个程序,通过填充空格来解决数独问题。 一个数独的解法需遵循如下规则: 数字 1-9 在每一行只能出现一次。数字 1-9 在每一列只能出现一次。数字 1-9 在每一个以粗实线分隔的 3x3
2021-02-17
回溯算法中排列组合和子集三个的问题总结 回溯算法中排列组合和子集三个的问题总结
回溯算法中排列组合和子集三个的问题总结 什么是排列、组合 总结 什么是排列、组合排列和组合本质区别在于:决策的顺序对结果有没有影响。下面举例说明现在有8个人,他们的名字分别为:现在有 3 个奖杯,本别为 Golden 金牌,Silve
2021-02-16
77. 组合(回溯算法) 77. 组合(回溯算法)
77. 组合 题目 解题思路 代码 题目给定两个整数 n 和 k,返回 1 … n 中所有可能的 k 个数的组合。 解题思路来理解一下题目:输入 n = 4, k = 2,输出如下结果, 顺序无所谓,但是不能包含重复(按照组合的定义,
2021-02-16
46. 全排列(回溯算法) 46. 全排列(回溯算法)
46. 全排列 题目 解题思路 代码 题目给定一个 没有重复 数字的序列,返回其所有可能的全排列。 解题思路画出决策树我们只需要套用模板,把叶子结点的值加入res就可以了。 注意: 排列问题每次通过 contains 方法来排除在 t
2021-02-16
78. 子集(回溯算法) 78. 子集(回溯算法)
78. 子集 题目 解题思路 代码 题目给你一个整数数组 nums ,数组中的元素 互不相同 。返回该数组所有可能的子集(幂集)。 解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。 解题思路画出决策树,然后直接套用模板就可以
2021-02-16
29 / 71