数据结构和算法
数据结构和算法
全部文章
题解
读书笔记(1)
归档
标签
去牛客网
登录
/
注册
数据结构和算法的博客
关注微信公众号“数据结构和算法”,每日一题
全部文章
/ 题解
(共57篇)
【数据结构和算法】递归和非递归,以及公式计算等4种实现方式
来自专栏
1,递归的写法 这题我们可以参照之前分析的青蛙跳台阶问题,其实原理是完全一样的我们来分析一下: 当n等于1的时候,只需要跳一次即可,只有一种跳法,记f(1)=1 当n等于2的时候,可以先跳一级再跳一级,或者直接跳二级,共有2种跳法,记f(2)=2 当n等于3的时候,他可以从一级台阶上跳两步上来,也...
斐波那契数列
java
动态规划
2021-03-21
22
1351
【数据结构和算法】非递归和递归两种方式解决
来自专栏
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
822
【数据结构和算法】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
下一页
末页