数据结构和算法
数据结构和算法
全部文章
分类
读书笔记(1)
题解(70)
归档
标签
去牛客网
登录
/
注册
数据结构和算法的博客
关注微信公众号“数据结构和算法”,每日一题
TA的专栏
76篇文章
67人订阅
数据结构和算法
73篇文章
54597人学习
常见数据结构介绍
3篇文章
606人学习
全部文章
(共59篇)
【数据结构和算法】判断回文链表,图文详解
来自专栏
1,反转后半部分链表 这题是让判断链表是否是回文链表,所谓的回文链表就是以链表中间为中心点两边对称。我们常见的有判断一个字符串是否是回文字符串,这个比较简单,可以使用两个指针,一个最左边一个最右边,两个指针同时往中间靠,判断所指的字符是否相等。 但这题判断的是链表,因为这里是单向链表,只能从前往...
java
链表
栈
2021-03-21
50
2159
【数据结构和算法】递归和非递归,以及公式计算等4种实现方式
来自专栏
1,递归的写法 这题我们可以参照之前分析的青蛙跳台阶问题,其实原理是完全一样的我们来分析一下: 当n等于1的时候,只需要跳一次即可,只有一种跳法,记f(1)=1 当n等于2的时候,可以先跳一级再跳一级,或者直接跳二级,共有2种跳法,记f(2)=2 当n等于3的时候,他可以从一级台阶上跳两步上来,也...
斐波那契数列
java
动态规划
2021-03-21
22
1371
【数据结构和算法】非递归和递归两种方式解决
来自专栏
1,非递归解决 每k个一组进行反转,如果不够k个就不需要反转,关于链表的反转,不会的可以看下《432,剑指 Offer-反转链表的3种方式》 。最简单的一种方式就是把链表每k个分成一组,然后反转这每一组的节点,接着在把他们串起来即可。 public ListNode reverseKGrou...
java
反转
链表
2021-03-18
51
2331
【数据结构和算法】18种解法,直接上代码
来自专栏
java的18种写法,之前在公众号《数据结构和算法》中分为3个系列专门写过,这里就不在细写了,我把答案全部列出来,因为太多,我只给一些简单的提示,如果不懂的可以看下前面写的那3个系列,有图文分析364,位1的个数系列(一)385,位1的个数系列(二)402,位1的个数系列(三)或者也可以在下面留言,...
java
二进制
位运算
2021-03-17
4
821
【数据结构和算法】什么叫回溯算法,一看就会,一写就废
来自专栏
什么叫回溯算法 对于回溯算法的定义,百度百科上是这样描述的:回溯算法实际上一个类似枚举的搜索尝试过程,主要是在搜索尝试过程中寻找问题的解,当发现已不满足求解条件时,就“回溯”返回,尝试别的路径。回溯法是一种选优搜索法,按选优条件向前搜索,以达到目标。但当探索到某一步时,发现原先选择并不优或达不到目标...
java
回溯算法
2021-03-15
3
0
【数据结构和算法】3种方式解决
来自专栏
1,使用栈解决 链表的反转是老生常谈的一个问题了,同时也是面试中常考的一道题。最简单的一种方式就是使用栈,因为栈是先进后出的。实现原理就是把链表节点一个个入栈,当全部入栈完之后再一个个出栈,出栈的时候在把出栈的结点串成一个新的链表。原理如下 import java.util.Stack; publ...
java
反转
链表
2020-12-21
816
54597
【数据结构和算法】剑指offer-JZ2. 替换空格
来自专栏
请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 答案: 1,先把字符串转换为单个字符 这里让求的是把字符串中的空格替换成%20,其中一种实现方式就是申请一个临时数组,然后再遍历这个字符串的...
java
2020-08-07
2
827
【数据结构和算法】剑指offer-JZ1. 二维数组中的查找(暴力和线性查找)
来自专栏
剑指 Offer 4. 二维数组中的查找 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 答案: 1,暴力求解 当然最容易想到的是暴力求解,就是一个个...
java
查找
线性
二分法
2020-08-07
14
1346
【数据结构和算法】剑指offer-JZ50. 数组中重复的数字(4种实现方式)
来自专栏
JZ50. 数组中重复的数字 在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的,但不知道有几个数字是重复的。也不知道每个数字重复几次。请找出数组中任意一个重复的数字。 例如,如果输入长度为7的数组{2,3,1,0,2,5,3},那么对应的输出是第一个重复的数字2。 ...
java
重复的数字
2020-08-07
4
1174
首页
上一页
1
2
3
4
5
6
下一页
末页