数据结构与算法
文章平均质量分 96
LeetCode算法题专栏
itlemon2021
年华易逝,且行且珍惜!
展开
-
【甘泉算法】一文搞定“岛屿类”问题
leetcode上有许多非常有意思的题目,“岛屿类”问题绝对算得上有意思的题目,这些题目解决起来可能有点棘手,但是如果可以独立思考解决它,还是很锻炼人的思维能力的。其实这类“岛屿类”问题就是DFS(深度优先搜索)的应用,本文将结合leetcode上几道经典的题目,和大家一起来讨论讨论。一、例题列表这里列出本文需要解决的几道题,如下所示:序号题目难度1No.200 岛屿数量中等2No.462 岛屿的周长简单3No.695 岛屿的最大面积中等4No.原创 2021-08-28 00:57:57 · 409 阅读 · 0 评论 -
【甘泉算法】一文搞定还原二叉树问题
二叉树是一个重要的数据结构,学习好二叉树很重要,本文将借助leetcode三道练习题,从前序+后序、前序+中序以及中序+后序三种遍历组合方式来还原二叉树。一、二叉树的遍历首先我们一起来温习下二叉树的三种遍历方式:前序遍历、中序遍历、后续遍历。如果读者不太了解这三种遍历方式,建议找点博客看看二叉树的三种遍历,本文主要是借助二叉树的遍历结果来还原二叉树,所以本文默认读者是了解二叉树的遍历的。首先我们一起看下二叉树的三种遍历方式,如下图所示一棵二叉树:三种遍历结果如下所示:三种遍历方式的区别是:.原创 2021-07-10 20:52:13 · 2230 阅读 · 8 评论 -
【甘泉算法】一文搞定单调栈问题
栈(stack)是一种特殊的数据结构,但也是一种容易理解的数据结构,它的特点就是先进后出,生活中有很多栈的例子,比如装乒乓球的直筒,最先进入的球到达桶底,然后一个一个进入,最后进入的球在出桶的时候是第一出来,最先进去的是最后一个出来。本文所提到的单调栈其实就是在普通栈的基础上加上了单调的特性,栈内元素保持单调递增或者单调递减的特性。一、单调栈解决的问题本文主要利用单调栈来解决leetcode上的典型问题,其实它的应用范围倒是不广,主要解决的都是类似于leetcode上下一个更大元素的问题,本文将从这.原创 2021-06-19 23:34:23 · 675 阅读 · 3 评论 -
LeetCode1 两数之和
题目给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]解答pac...原创 2019-11-13 17:59:42 · 7000 阅读 · 0 评论