Maokt
Maokt
全部文章
分类
题解(109)
归档
标签
去牛客网
登录
/
注册
Maokt的知识小河
持续学习,共同成长
全部文章
(共108篇)
题解 | #剪绳子#
算法思想一:动态规划 解题思路: 1、我们想要求长度为n的绳子剪掉后的最大乘积,可以从前面比n小的绳子转移而来 2、用一个dp数组记录从0到n长度的绳子剪掉后的最大乘积,也就是dp[i]表示长度为i的绳子剪成m段后的最大乘积,初始化dp[2] = 1 3、我们先把绳子剪掉第一段(长度为j...
剪绳子
2021-07-01
16
1529
题解 | #机器人的运动范围#
算法思想一:深度优先遍历DFS 解题思路: 深度优先搜索: 可以理解为暴力法模拟机器人在矩阵中的所有路径。DFS 通过递归,先朝一个方向搜到底,再回溯至上个节点,沿另一个方向搜索,以此类推。 剪枝: 在搜索中,遇到数位和超出目标值、此元素已访问,则应立即返回,称之为 可行性剪枝 ...
机器人的运动范围
2021-07-01
5
1189
题解 | #用两个栈实现队列#
算法思想:双栈(此题已明确解题方法即双栈) 解题思路: 借助栈的先进后出规则模拟实现队列的先进先出 1、当插入时,直接插入 stack1 2、当弹出时,当 stack2 不为空,弹出 stack2 栈顶元素,如果 stack2 为空,将 stack1 中的全部数逐个出栈入栈 ...
用两个栈实现队列
2021-06-30
51
8951
题解 | #重建二叉树#
算法思想一:递归 解题思路: 二叉树的前序遍历:根左右;中序遍历:左根右 由前序遍历知道根节点之后,能在中序遍历上划分出左子树和右子树。分别对中序遍历的左右子树递归进行这一过程即可建树。 图解: 代码展示: Python版本 class&nb...
2021-06-30
79
9373
题解 | #从尾到头打印链表#
算法思想一:辅助数组 解题思路: 1、创建存储链表结点元素的数组 res 2、遍历链表,并同时将遍历的结点存储入数组 3、倒序输出数组结果 图解: 链表:{1,2,3} 步骤 链表 ...
从尾到头打印链表
2021-06-29
21
3533
题解 | #二维数组中的查找#
算法思想一:暴力遍历 解题思路: 如果不考虑二维数组排好序的特点,则直接遍历整个二维数组的每一个元素,判断目标值是否在二维数组中存在。 依次遍历二维数组的每一行和每一列。如果找到一个元素等于目标值,则返回 true。如果遍历完毕仍未找到等于目标值的元素,则返回 false。 代码...
二维数组中的查找
2021-06-29
4
1847
题解 | #正则表达式匹配#
算法思想一:递归 解题思路: 每次从字符串里取出一个字符与模式中的字符匹配,如果模式中的字符是‘.’,它可以匹配字符串中的任意字符,如果不是,那么如果它与字符串中的字符相等则匹配。当字符串的字符和模式的字符匹配时,接着匹配后面的字符。 下面,考虑模式中的第二个字符是不是‘*’。如果不是,...
正则表达式匹配
2021-06-29
20
3448
题解 | #链表中环的入口结点#
算法思想一:双指针 解题思路: 我们使用两个指针,fast 与 slow。 1、它们起始都位于链表的头部。随后,slow 指针每次向后移动一个位置,而fast 指针向后移动两个位置。如果链表中存在环,则 fast 指针最终将再次与 slow 指针在环中相遇。 2、当发现 sl...
链表中环的入口结点
2021-06-28
17
3240
题解 | #字符流中第一个不重复的字符#
算法思想一:哈希表 解题思路: 通过哈希表统计字符流中每个字符出现的次数,顺便将字符流保存在string中,然后再遍历string,从哈希表中找到第一个出现一次的字符 图解: 代码展示: Python版本 # -*- coding:utf-8&n...
字符流中第一个不重复的字符
2021-06-28
1
949
题解 | #表示数值的字符串#
算法思想一:有限状态自动机 解题思路: 根据字符类型和合法数值的特点,先定义状态 字符类型: 空格 「 」、数字「 0—9 」 、正负号 「 +- 」 、小数点 「 .」 、幂符号 「 eE 」 状态定义: 按照字符串从左到右的顺序,定义以下 9 种状态。 1.开始的空格 2....
表示数值的字符串
2021-06-28
23
1725
首页
上一页
2
3
4
5
6
7
8
9
10
11
下一页
末页