认认真真coding
认认真真coding
全部文章
题解
未归档(5)
归档
标签
去牛客网
登录
/
注册
欢迎讨论算法!
写的算法啥也不是,面试官:“今天的面试就到这里了,下次聊!”
全部文章
/ 题解
(共127篇)
题解 | #kmp算法#
来自专栏
题目描述给你一个非空模板串S,一个文本串T,问S在T中出现了多少次 方法一:暴力求解 求解思路对于本题目要求出模板串S在文本串T中出现的次数,我们想到直接从文本串T的第一个位置往后寻找模板串S长度的子串,然后拿出来和S比较即可,并且我们设置res变量来记录相同的个数。 解题代码 class So...
2021-07-30
0
663
题解 | #几步可以从头跳到尾#
来自专栏
题目描述给你一个长度为n的数组A。A[i]表示从i这个位置开始最多能往后跳多少格。求从1开始最少需要跳几次就能到达第n个格子。 方法一:暴力求解 求解思路对于本题目要求从1开始最少需要跳几次就能到达第n个格子。我们设置三个变量分别记录当前位置、最远跳跃位置和跳跃次数。每当当前位置和索引i相等时,将最...
2021-07-29
0
510
题解 | #主持人调度#
来自专栏
题目描述有n个活动即将举办,每个活动都有活动的开始时间与活动的结束时间,第i个活动的开始时间是starti,第i个活动的结束时间是endi,举办某个活动就需要为该活动准备一个活动主持人。一位活动主持人在同一时间只能参与一个活动。并且活动主持人需要全程参与活动,换句话说,活动主持人参与了第i个活动,那...
2021-07-29
0
874
题解 | #01背包#
来自专栏
题目描述已知一个背包最多能容纳物体的体积为V现有n个物品第i个物品的体积为vi,第i个物品的重量为wi。求当前背包最多能装多大重量的物品 方法一:动态规划 求解思路对于求解01背包问题,我们想到使用动态规划进行求解,可以发现,对于一个物体,我们有两种选择,放或者不放进背包。这样便将问题划分成了更小的...
2021-07-29
0
423
题解 | #不相邻最大子序列和#
来自专栏
题目描述给你一个n(1≤n≤10^5),和一个长度为n的数组,在不同时选位置相邻的两个数的基础上,求该序列的最大子序列和(挑选出的子序列可以为空)。 方法一:动态规划 求解思路对于本题目要求在不相邻的位置时求解最大子序列的和。这道题目是一个01背包问题,即根据前边计算好的i个节点的结果判断是否选择当...
2021-07-29
0
715
题解 | #最长重复子串#
来自专栏
题目描述一个重复字符串是由两个相同的字符串首尾拼接而成,例如abcabc便是长度为6的一个重复字符串,而abcba则不存在重复字符串。给定一个字符串,请编写一个函数,返回其最长的重复字符子串。若不存在任何重复字符子串,则返回0。 方法一:暴力解法 求解思路对于本题目,我们直到这个重复的子串是小于原字...
2021-07-28
0
1008
题解 | #判断回文#
来自专栏
题目描述给定一个字符串,请编写一个函数判断该字符串是否回文。如果回文请返回true,否则返回false。 方法一:暴力解法--直接反转字符串,判断是否相等 求解思路对于本题目,判断是否是回文,我们用最直接的方法,将字符串直接翻转过来,然后判断是否相等即可。 解题代码 import java.ut...
2021-07-28
0
431
题解 | #合并二叉树#
来自专栏
题目描述已知两颗二叉树,将它们合并成一颗二叉树。合并规则是:都存在的结点,就将结点值加起来,否则空的位置就由另一个树的结点来代替。例如:两颗二叉树是:Tree 1 1 / \ 3 2 / 5 Tree 2 2 / 1 3 \ 4 7 合并后的...
2021-07-28
0
475
题解 | #把数字翻译成字符串#
来自专栏
题目描述有一种将字母编码成数字的方式:'a->1', 'b->2', ... , 'z->26'。现在给一串数字,返回有多少种可能的译码结果 方法一:递归求法 求解思路对于本题目给出的一串数字,并且要返回有多少种可能的译码结果,我们想到用递归的思想进行求解。每次解码一个字符,如果当...
2021-07-27
0
728
题解 | #栈和排序#
来自专栏
题目描述给你一个1->n的排列和一个栈,入栈顺序给定你要在不打乱入栈顺序的情况下,对数组进行从大到小排序当无法完全排序时,请输出字典序最大的出栈序列 方法一:暴力求解--逆序记录后续最大元素 求解思路对于本题目,无论是由大到小输出还是按字典序最大输出,都是要求大数在前,小数在后。因此元素何时出...
2021-07-27
3
819
首页
上一页
4
5
6
7
8
9
10
11
12
13
下一页
末页