![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
leetcode刷题
vinojie
这个作者很懒,什么都没留下…
展开
-
字符串匹配算法之Rabin-Karp,KMP算法
Rabin-Karp算法Rabin-Karp算法是由M.O.Rabin和R.A.Karp发明的一种基于散列的字符串查找算法。Rabin_karp算法的思想是通过将字符串的比较转回成数字的比较。比较两个长度为m的字符串是否相等需要O(m)时间,而比较两个数字是否相等通常可以是O(1)。为了将字符串映射称对应的数字,需要用到哈希函数。这里存在一个问题就是利用哈希函数将字符串映射成对应的数字有可能发生哈希冲突,也就是说两个字符串通过哈希函数得到数字相等,但是这两个字符不同。Rabin-Karp的解决方法是,原创 2020-09-14 14:41:47 · 1014 阅读 · 0 评论 -
leetcode刷题日记———深度优先搜索(岛屿问题)
岛屿数量题目描述:给你一个由 ‘1’(陆地)和 ‘0’(水)组成的的二维网格,请你计算网格中岛屿的数量。岛屿总是被水包围,并且每座岛屿只能由水平方向或竖直方向上相邻的陆地连接形成。此外,你可以假设该网格的四条边均被水包围。输入:11000110000010000011输出: 3解释: 每座岛屿只能由水平和/或竖直方向上相邻的陆地连接而成基本思路:深度优先搜索,遍历矩阵中所有为1的网格,然后dfs,这里将访问过的节点做标记,防止再次访问。代码如下:class Solution:原创 2020-08-19 21:40:24 · 991 阅读 · 0 评论 -
leetcode刷题日记----数组问题
leetcode关于数组的面试经典问题原创 2020-08-05 21:41:21 · 928 阅读 · 0 评论 -
leetcode刷题---树问题总结
一、二叉树的前序、后序、中序,层次遍历的递归和循环实现class TreeNode(object): """定义节点类""" def __init__(self, x, left=None, right=None): self.val = x self.left = None self.right = Noneclass Tree(object): def __init__(self): self.root = T原创 2020-08-02 18:52:58 · 452 阅读 · 0 评论 -
leetcode----位运算(python)
leetcode 位运算的相关题目,使用python编写原创 2020-06-11 11:54:43 · 238 阅读 · 0 评论 -
leetcode----链表的排序问题
链表排序题目描述:在 O(n log n) 时间复杂度和常数级空间复杂度下,对链表进行排序。例如:输入: 4->2->1->3输出: 1->2->3->4。思路分析:因为要求在O(nlogn)的时间复杂度,所以想到使用归并排序。下面对归并排序做个介绍。归并排序基本方法如下:(1)把待排序序列的n个记录看成n个有序子序列,每个子序列长度为1.(2)把...原创 2020-06-11 11:54:20 · 165 阅读 · 0 评论 -
leetcode刷题总结--链表问题(python)双指针法
链表中的双指针问题(python)原创 2020-06-11 11:53:00 · 473 阅读 · 0 评论 -
leetcod中常见的字符串问题总结(python)
字符串问题原创 2020-06-11 11:52:17 · 183 阅读 · 0 评论 -
leetcode----动态规划之回文串
回文串问题总结原创 2020-06-11 11:51:19 · 141 阅读 · 0 评论 -
基于python实现通俗易懂讲解并查集
基于python讲解并查集的原理。并通过过leetcode例题进行讲解。“并”的意思是把两个处在同一个连通分量的结点给并到一起.“查”的意思是查找一个结点的根节点.“并”的时候需要用到“查”原创 2020-06-08 12:33:48 · 643 阅读 · 1 评论 -
leetcode——动态规划问题(打家劫舍)
打家劫舍1题目描述:你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。给定一个代表每个房屋存放金额的非负整数数组,计算你在不触动警报装置的情况下,能够偷窃到的最高金额。思路分析:对于每一个房屋,要么偷要么不偷,如果偷当前房屋,那么小偷就只能在下下一个房屋做...原创 2020-04-12 15:20:58 · 1046 阅读 · 0 评论 -
leetcode刷题日记----栈(python)
单调栈适合解决两边大小决定中间特征的问题柱状图中最大矩形题目描述:给定 n 个非负整数,用来表示柱状图中各个柱子的高度。每个柱子彼此相邻,且宽度为 1 。求在该柱状图中,能够勾勒出来的矩形的最大面积。思路分析:这题的关键在于以某个点B为高的矩形的最大宽度为该点左边第一个小于它的点a到右边最靠近它且比其小的点c。单调栈的特点在于:当遇见大数的时候, 压入堆栈,等待之后处理。当遇见小数c...原创 2020-04-05 16:25:53 · 335 阅读 · 0 评论