![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
LeetCode
黛色翩翩
来了就是朋友 我是黛色翩翩。我们立志做最好的开源项目分享平台,这里不仅仅有各种有趣且实用的开源项目,还会定期分享关于Java,并发编程,性能优化,中间件服务,架构设计等相关后端知识与面试,就业,找工作,简历模板等就业大计,拥有我就相当于拥有整个互联网包括,快来聊一聊吧
展开
-
字符串与整数系列
文章目录字符串与整数问题把数字翻译为字符串动态规划理解字符串相加字符串相乘判断字符串是不是整数字符串转化为整数此篇文章收录在Maycope的个人Github上May-Nodes字符串与整数问题把数字翻译为字符串把数字翻译成为字符串动态规划理解还是之前的那句话:对于求最后的数量的问题一般都能够转化成为动态规划来进行求解,对于求路径,最后的结果集等,可以转换成为深度和广度这里我们采用动态规划的思想进行解决:对于一个数num[i],我们可以进行两种选择:只翻译自己,就是和前面的不进行关联处理。原创 2020-10-24 13:42:37 · 437 阅读 · 3 评论 -
二叉树的建立
文章目录中序和后序建立题目(106-中等)思考位置关系的建立代码中序和前序题目(105-中等)思考位置关系的建立代码中序和后序建立题目(106-中等)根据一棵树的中序遍历与后序遍历构造二叉树。注意:你可以假设树中没有重复的元素。例如,给出中序遍历 inorder = [9,3,15,20,7]后序遍历 postorder = [9,15,7,20,3]返回如下的二叉树: 3 / \ 9 20 / \ 15 7思考利用Map来存放每个值和其相原创 2020-09-26 15:14:57 · 981 阅读 · 1 评论 -
回溯系列三之字符串与游戏
文章目录字符串中的回溯电话号码的字母组合题目思想代码字母的大小写排列题目思想代码括号生成题目思想代码(DFS)代码(BFS)字符串中的回溯电话号码的字母组合题目电话号码的字母组合思想利用回溯的基本思想,将出现的值先进行值先进行数组的记录处理,然后再进行基础的回溯。代码 public List<String> letterCombinations(String digits) { String [] nums = {"abc","def","ghi","jkl",原创 2020-09-09 23:25:53 · 1196 阅读 · 0 评论 -
回溯系列二之泛洪遍历所有
文章目录01系列问题总结被环绕的区域QuestionThinkingCoding岛屿问题QuestionThinkingCoding最长连续1QuestionThinkingCoding图像渲染QuestionThinkingCoding01系列问题总结广告: github上新开立了一个仓库May-Nodes,本篇博客也收录其中。包括但不限于之前面试遇到的相关数据库,计算机操作系统,Java基础知识,计算机网络以及LeetCode等算法题解等知识。届时也会整理学习使用的PDF文档与资源。有需要的小伙伴原创 2020-09-08 21:59:02 · 1476 阅读 · 0 评论 -
回溯系列一之排列组合与子集系列
文章目录组合总和题目思想代码优化组合总和-II题目思想代码优化一:优化二组合总和题目39-组合总和思想也算是典型的回溯系列的题解分析,对于此题目是组合系列,所谓的组合系列就是说,给定我们一个数组,让我们能够找出来特定的几个满足条件的存在。对于组合需要关注的在于。由于顺序无关紧要,因此一个数有没有被选过很重要,因此需要设置搜索起点。对于此题目来说,认为数字是可以重复使用,所以在完成了一个计算值的加入之后,例如对于2d的加入之后,我们并不需要说像是平常那样立马就对下一个元素进行遍历,就是在回溯原创 2020-09-08 16:37:52 · 1267 阅读 · 0 评论 -
前K个高频的元素衍生之Map的Value与Key排序
前言本篇文章总结来自九月份的每日一题347-前K个高频的元素思考对于系列的题目就是计算利用到Hash表的属性的Key与Value的双属性,能够满足我们后面计算对于每一个元素出现的频率的同时还能够保存对于Key值的一一对应,能够让我们得以进行系列的计算与操作,其实对于Hash表的使用最明显的莫过于LeetCode的第一题:两数之和和其变形三数之和,都有利用到Hash来判断某一个值是否存在或者对其的Value进行系列的增加或删除操作,不需要我们进行遍历判断,且是线性。思路还是和之前一样,我们先对数原创 2020-09-07 11:34:10 · 800 阅读 · 31 评论 -
深广度优先搜索系列题解
深广度优先搜索系列题解大体认知在算法第四版中无向图部分对深度优先与广度优先进行了比较细致的讲解,详情可以参见我在github上完善的[算法第四版无向图](https://github.com/maycope/Algorithms4-Emphasis/blob/master/Chapter04-Grapths/4.1 无向图.md)的基础介绍。其实在了解完(在校都应该学习过系列的数据结构)深度与广度优先算法之后,我们可以将完整的过程表示为一下的两张图片:深度优先以一个点出发不断深入其中对于深度优先原创 2020-08-20 14:10:46 · 854 阅读 · 0 评论 -
分割数组衍生思考
文章目录安排邮筒问题思考二分查找系列问题小张刷题计划平方根问题寻找重复数爱吃香蕉的珂珂在D天内送达包裹的能力制作 m 束花所需的最少天数广告: github上新开立了一个仓库May-Nodes,本篇博客也收录其中。包括但不限于之前面试遇到的相关数据库,计算机操作系统,Java基础知识,计算机网络以及LeetCode等算法题解等知识。届时也会整理学习使用的PDF文档与资源。有需要的小伙伴 可以点个关注和star。在持续更新中,总会遇到你想要的。分割数组原文地址安排邮筒问题安排邮筒思考同分割数原创 2020-08-17 17:34:47 · 483 阅读 · 0 评论 -
回溯系列二之泛洪遍历所有
文章目录01系列问题总结被环绕的区域QuestionThinkingCoding岛屿问题QuestionThinkingCoding最长连续1QuestionThinkingCoding图像渲染QuestionThinkingCoding01系列问题总结广告: github上新开立了一个仓库May-Nodes,本篇博客也收录其中。包括但不限于之前面试遇到的相关数据库,计算机操作系统,Java基础知识,计算机网络以及LeetCode等算法题解等知识。届时也会整理学习使用的PDF文档与资源。有需要的小伙伴原创 2020-08-16 22:22:32 · 173 阅读 · 0 评论 -
LeetCode系列题解之 二叉搜索树系列题解
二叉搜索树广告: 最近github上新开了一个仓库,包括但不限于之前面试遇到的相关数据库,计算机操作系统,Java基础知识,计算机网络以及LeetCode等算法题解等知识。届时也会整理学习使用的PDF文档与资源。有需要的小伙伴 可以点个关注和star。在持续更新中,总会遇到你想要的。前言首先明白二叉搜索树系列的特殊性:二叉搜索树(Binary Search Tree 简称为BST),对于其的特点是任意节点的值都要大等于左子树所有节点的值,且要小于等于右边子树的所有节点的值。其左右子树的特性也就奠原创 2020-08-09 13:51:33 · 909 阅读 · 30 评论 -
LeetCode401: 分割数组最大值
文章目录LeetCode401: 分割数组最大值动态规划方法二分法后记LeetCode401: 分割数组最大值给定一个非负整数数组和一个整数 m,你需要将这个数组分成 m 个非空的连续子数组。设计一个算法使得这 m 个子数组各自和的最大值最小。注意:数组长度 n 满足以下条件:1 ≤ n ≤ 10001 ≤ m ≤ min(50, n)示例:输入:nums = [7,2,5,10,8]m = 2输出:18解释:一共有四种方法将nums分割为2个子数组。其中最好的方式是将原创 2020-07-30 23:23:02 · 244 阅读 · 0 评论 -
字节面试算法真题之合并n个数组/链表
文章目录前言思考合并链表合并数组返回ArrayList返回int数组后记前言此题是自己在整理算法题目时候发现字节的面试官经常会问道这个题目,这里就做一个记录。首先来看一下对应的leetcode:合并 k 个排序链表,返回合并后的排序链表。请分析和描述算法的复杂度。示例:输入:[ 1->4->5, 1->3->4, 2->6]输出: 1->1->2->3->4->4->5->6思考合并链表首先这个题目原创 2020-06-14 10:02:31 · 460 阅读 · 0 评论 -
LeetCode207: 课程表(字节手撕算法拓扑排序)
文章目录前言正文题干思路入度表(广度优先遍历)展示后记前言(与正文无关,赶时间的跳过呀!!!)前段时间了解到了这个拓扑排序,我感觉很是陌生。一百度,绝了,数据结构都学习过,想当时数据结构学习的还不错,现在都还给老师了呀,看来就算是自己学习过的内容还是需要记录和总结呀(真实废话)。最近在准备出一个算法第四版基础算法的记录,到时候github仓库发出,会将所学算法再度进行一个总结,希望能够给大...原创 2020-04-14 16:52:09 · 457 阅读 · 0 评论 -
LeetCode146: LRU缓存机制(字节面试手撕题)
文章目录前言题干举个栗子具体学习实现LinkedList+HashMap双向链表+HashMap节点的定义:双向链表API具体执行过程后记前言之前在校学习计算机操作系统时候学习过,当时就明白了个什么意思,但是具体的实现老师并没有给我们要求,当时也就没有具体的深入学习,这段时间发现对于基础的部分还是蛮重要的。加上发现对于最近的面试来说这个还蛮重要的,所以这里拿出来自己进行记录一下,希望能帮助到在...原创 2020-04-14 12:15:22 · 534 阅读 · 0 评论 -
LeetCode116/117:填充每个节点的下一个右侧节点指针(接剑指五十六:删除链表重复节点)
题干:116给定一个完美二叉树,其所有叶子节点都在痛一层,每个父节点都有两个子节点。定义如下struct Node { int val; Node *left; Node *right; Node *next;}填充它的每个 next 指针,让这个指针指向其下一个右侧节点。如果找不到下一个右侧节点,则将 next 指针设置为 NULL。初始状态下,所有 next 指针都...原创 2020-04-09 22:15:20 · 98 阅读 · 0 评论 -
LeetCode之最长重复子串与无重复最长子串
leetcode-1044 最长重复子串题干:给出一个字符串 S,考虑其所有重复子串(S 的连续子串,出现两次或多次,可能会有重叠)。返回任何具有最长可能长度的重复子串。(如果 S 不含重复子串,那么答案为 “”。)举个例子输入:"banana"输出:"ana"输入: "dfgdsfsfdfgj"输出: "dfg"思路:首先想到的是循环,就是如何让相等的地方停下来,觉得...原创 2020-04-04 21:55:19 · 235 阅读 · 0 评论 -
树算法系列 一 树的遍历与LeetCode相关树遍历算法
引言众说周知,树在算法领域算是一个比较大的分支结构。其中的对于树及基础的遍历,以及对于各种遍历情况下的衍生出来的也是层出不穷,今天就来记录在学习过程中遇到的一些基础的遍历过程中的算法题目,也是系列的第一讲。注:以下所有代码皆使用Java进行编写树的各种遍历:首先我们需要了解一下数的各种遍历:分为先序,中序,后序,层序;讲解:对于树的操作而言,由于在很多的情况下都是会回退到对上一级的访问,...原创 2020-02-25 16:58:46 · 424 阅读 · 26 评论