- 博客(9)
- 资源 (11)
- 收藏
- 关注
原创 单词压缩编码--Trie树
问题描述:给定一个单词列表,我们将这个列表编码成一个索引字符串 S 与一个索引列表 A。例如,如果这个列表是 [“time”, “me”, “bell”],我们就可以将其表示为 S = “time#bell#” 和 indexes = [0, 2, 5]。 对于每一个索引,我们可以通过从字符串 S 中索引的位置开始读取字符串,直到 “#” 结束,来恢复我们之前的单词列表。那么成功对给定单词列表进行...
2020-03-30 19:33:55 247
原创 地图分析--广度搜索
问题来源:地图分析 问题描述:你现在手里有一份大小为 N x N 的『地图』(网格) grid,上面的每个『区域』(单元格)都用 0 和 1 标记好了。其中 0 代表海洋,1 代表陆地,你知道距离陆地区域最远的海洋区域是是哪一个吗?请返回该海洋区域到离它最近的陆地区域的距离。 我们这里说的距离是『曼哈顿距离』( Manhattan Distance):(x0, y0) 和 (x1, y1) 这两个...
2020-03-29 23:06:53 155
原创 链表的中间节点--快慢指针
问题来源:链表的中间节点 问题描述:给定一个带有头结点 head 的非空单链表,返回链表的中间结点。如果有两个中间结点,则返回第二个中间结点。 例子: 输入:[1,2,3,4,5] 输出:此列表中的结点 3 (序列化形式:[3,4,5]) 返回的结点值为 3 。 (测评系统对该结点序列化表述是 [3,4,5])。 注意,我们返回了一个 ListNode 类型的对象 ans,这样: ans.val ...
2020-03-23 12:07:02 286
原创 二叉树层次遍历--广度遍历和深度遍历
问题来源:二叉树层次遍历 问题描述:给定一个二叉树,返回其按层次遍历的节点值。 (即逐层地,从左到右访问所有节点)。 例子: 给定二叉树: [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7 返回其层次遍历结果: [ [3], [9,20], [15,7] ] 思路:可以通过广度遍历和深...
2020-03-23 10:42:59 738
原创 对称二叉树--深度遍历与广度遍历
问题来源:对称二叉树 问题描述:给定一个二叉树,检查它是否是镜像对称的。 比如,下面这个二叉树是镜像对称的; 1 / 2 2 / \ / 3 4 4 3 而这个二叉树则不是镜像对称的。 1 / 2 2 \ 3 3 例子: 输入:[1,2,2,3,4,4,3] 输出:True 思路:镜像对称意味着左子树与右子树镜像对称,在遍历左子树或者右子树过程中...
2020-03-21 19:46:07 170
原创 最大堆与最小堆
问题来源:数组中的第K个最大元素 问题描述:在未排序的数组中找到第 k 个最大的元素。请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。 实际面试题:在10亿个元素中,准确找到前1000个最大元素。 思路: 如果仅仅是大概的,我们可以将通过一次遍历,找到最大值maxmaxmax与最小值minminmin。然后在此区间内,划分出100万个桶。再通过一次遍历,将10亿...
2020-03-20 19:36:47 198
原创 不同路径(I和II)--动态规划
这里,我们将遇到两类不同路径的问题,第一类不考虑障碍物,第二类考虑障碍物。 1. 不考虑障碍物 问题来源:不同路径I 问题描述:一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。 问总共有多少条不同的路径? 示例: 输入: m = 3, n = 2 输出: 3 ...
2020-03-18 18:02:47 203
原创 最大子序和--动态规划
问题来源:最大子序和 问题描述:给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。 例子: 输入: [-2,1,-3,4,-1,2,1,-5,4], 输出: 6 解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。 1. O(n2)O(n^2)O(n2)算法 这是一种暴力算法。两层遍历将所有的可能子列表取得,并计算该子列表和。第一遍遍历,...
2020-03-18 15:50:56 214
原创 最长回文子串--动态规划
问题来源:最长回文子串 问题描述:给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。 例子: 输入: “babad” 输出: “bab” 注意: “aba” 也是一个有效答案。 1. O(n3)O(n^3)O(n3)算法 最简单也是最直观的做法是暴力算法。通过两层遍历,我们可以选出所有可能的子串,然后判断该子串是否是回文。 class Solution: ...
2020-03-17 21:14:10 125
opencv4.1.1+opencv-contrib4.1.1+boostdesc_bgm.i等.rar
2021-10-20
音乐推荐系统数据集.zip
2020-08-13
tmdb5000.zip
2020-08-08
countries.txt
2020-02-11
lianjia_beijingHousing_fromKaggle.zip
2015-06-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人