已注销
已注销
全部文章
分类
排序(2)
题解(46)
归档
标签
去牛客网
登录
/
注册
已注销的博客
全部文章
(共48篇)
剑指offer:48-题解 | #最长不含重复字符的子字符串#
题目描述 请从字符串中找出一个最长的不包含重复字符的子字符串,计算该最长子字符串的长度。 数据范围:s.length≤40000 题解:动态规划 哈希表统计: 遍历字符串 s 时,使用哈希表(记为 dic )统计 各字符最后一次出现的索引位置 。 左边界 i 获取方式: 遍历到 s[j]时,可通过...
C++
动态规划
2022-02-09
0
487
剑指offer:47-题解 | #礼物的最大价值#
题解:一般遇到路径的问题,首先想到一层一层进行遍历 class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param grid int整型vector&l...
C++
数组
2022-02-09
0
301
剑指offer:45-题解 | #把数组排成最小的数#
解题思路: 要注意题目的意思是把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。 先将整数转换为字符串,再以字符串形式拼接后进行比较:比较方式如下 A+B 与 B+A 之间比较的问题(注意:这里的A+B并不是A加上B,而是A拼上B),当A+B小于B+A的时候,很明显A要放在...
C++
字符串
2022-02-08
1
322
题解 | #连续子数组的最大和#
描述 输入一个长度为n的整型数组array,数组中的一个或连续多个整数组成一个子数组。求所有子数组的和的最大值。 数据范围: 要求:时间复杂度为 O(n)O(n),空间复杂度为 O(n)O(n) 进阶:时间复杂度为 O(n)O(n),空间复杂度为 O(1)O(1) 题解1:规律分析 输入: [1...
C++
动态规划
2022-02-08
0
346
题解 | #数据流中的中位数#
/* 题解1:使用数组排序 题解2:使用大小根堆----------推荐用法 大根堆 priority_queue<int> maxheap;保存中位数左边的小值 小根堆 priority_queue<int,vector<int>,greater&...
C++
2022-02-07
0
373
题解 | #矩阵中的路径#
DFS 题解1: #include<iostream> using namespace std; #include<vector> bool dfs(vector<vector<char>> matrix, int i, int row, int c...
C++
2022-01-24
0
350
题解 | #矩阵中的路径#
回溯法需要考虑很多条件,如下: 1、超过边界,需要返回到原来的索引位置 2、没超过边界,但是没有找到值,需要返回到原来的索引位置 3、没超过边界,找到值 3.1 找到值之和,需要把找到的值设置为*,防止word中存在重复的元素,当循环查找时候,若存在重复元素,而没有将之前走过的路径设置为*,就会存在...
C++
C++
2022-01-22
2
523
题解 | #重建二叉树#
题解步骤: 如果为空树,返回NULL,同时作为递归调用的出口 找出前序遍历的第一个结点,该结点为二叉树的根节点 如果只有一个元素,返回结点,也可以作为递归调用出口,可省略 找到前序遍历根节点在中序遍历中的位置 根据根节点的位置,定义四个容器,分别存放递归调用时候...
C++
2022-01-12
0
370
首页
上一页
1
2
3
4
5
下一页
末页