数据结构和算法
数据结构和算法
全部文章
分类
读书笔记(1)
题解(70)
归档
标签
去牛客网
登录
/
注册
数据结构和算法的博客
关注微信公众号“数据结构和算法”,每日一题
TA的专栏
96篇文章
70人订阅
数据结构和算法
73篇文章
55700人学习
常见数据结构介绍
4篇文章
785人学习
【面试精华】各大厂算法面试真题
19篇文章
211人学习
全部文章
(共89篇)
【数据结构和算法】快慢指针以及集合两种方式解决
这题可以参照《判断链表中是否有环》 ,答案我之前写过《链表是否有环3种方式解决》 ,这两道题有非常大的相似地方。 1,快慢指针解决 在前面我们提到过快慢指针,先判断是否有环,如果有环,在来找环的入口。我们假设是有环的,那么会有两种情况,我们来画个图看一下 1,环很大 假如他们在相遇点相遇了,那么慢...
链表
双指针
2021-03-19
10
2447
【数据结构和算法】双指针解决
1,双指针解决 题中说了只有小写字母,最简单的就是使用双指针,一个指向前,一个指向后,两个指针同时往中间走,如果两个指针指向的字符不一样就返回false,来看下代码 public boolean judge(String str) { if (str.length() == ...
回文
双指针
2021-03-19
24
1304
【数据结构和算法】动态规划,双指针,单调栈等6种解决方式
1,动态规划解决 这题是让求完成一笔交易所获得的最大利润,首先我们来看一下使用动态规划该怎么解决,动态规划还是那常见的几个步骤 确定状态 找到转移公式 确定初始条件以及边界条件 计算结果 我们来定义一个二维数组dp[length][2],其中dp[i][0]表示第i+1天(i是从0开始的)结束...
单调栈
双指针
动态规划
2021-03-19
51
2010
【数据结构和算法】BFS和DFS两种方式实现
1,BFS打印 二叉树的BFS打印,就是一层一层的往下打印,就像下面这样 具体可以看下373,数据结构-6,树,这里介绍了递归和非递归的解法。非递归的代码如下 public static void levelOrder(TreeNode tree) { if (tree =...
DFS
打印
二叉树
BFS
2021-03-19
6
1075
【数据结构和算法】使用栈解决,图文详解
要判断括号的有效性,左括号必须和右括号相对应。如果是有效括号,并且他们中间还有括号,那么他们必须也是有效的,所以最简单的一种方式就是使用栈来解决。 我们遍历字符串中的所有字符 1,如果遇到了左括号,就把对应的右括号压栈(比如遇到了字符'(',就把字符')'压栈)。 2,如果遇到了右括号 1)查看...
栈
2021-03-19
38
1371
【数据结构和算法】参照归并排序,3种解决方式。
1,参照归并排序 可以参照归并排序,具体可以看下《排序-归并排序》 public void merge(int[] nums1, int m, int[] nums2, int n) { int temp[] = new int[m + n]; int ind...
排序
数组
2021-03-18
18
1015
【数据结构和算法】非递归和递归两种方式解决
1,非递归解决 每k个一组进行反转,如果不够k个就不需要反转,关于链表的反转,不会的可以看下《432,剑指 Offer-反转链表的3种方式》 。最简单的一种方式就是把链表每k个分成一组,然后反转这每一组的节点,接着在把他们串起来即可。 public ListNode reverseKGrou...
java
反转
链表
2021-03-18
51
2361
【数据结构和算法】18种解法,直接上代码
java的18种写法,之前在公众号《数据结构和算法》中分为3个系列专门写过,这里就不在细写了,我把答案全部列出来,因为太多,我只给一些简单的提示,如果不懂的可以看下前面写的那3个系列,有图文分析 364,位1的个数系列(一) 385,位1的个数系列(二) 402,位1的个数系列(三) 或者也可以在下...
java
二进制
位运算
2021-03-17
4
851
【数据结构和算法】递归,BFS,DFS3种解决方式
1,递归 这题最容易想到的就是递归,啥叫“递归”,也就是下面这张图 开个玩笑,我们画个图来看下 原理很简单,代码如下 public int TreeDepth(TreeNode root) { return root==null? 0 : Math.max(TreeDepth(...
DFS
二叉树
BFS
2021-03-15
15
1200
【数据结构和算法】什么叫回溯算法,一看就会,一写就废
来自专栏
什么叫回溯算法 对于回溯算法的定义,百度百科上是这样描述的:回溯算法实际上一个类似枚举的搜索尝试过程,主要是在搜索尝试过程中寻找问题的解,当发现已不满足求解条件时,就“回溯”返回,尝试别的路径。回溯法是一种选优搜索法,按选优条件向前搜索,以达到目标。但当探索到某一步时,发现原先选择并不优或达不到目标...
java
回溯算法
2021-03-15
3
0
首页
上一页
1
2
3
4
5
6
7
8
9
下一页
末页