此篇博客主要记录剑指offer中遇到的不会的题。 一、重建二叉树(剑指offer 07) medium 2021-06-22 输入某二叉树的前序遍历和中序遍历的结果,请重建该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。 解题思路:前序遍历的特点,根节点在第一位; 中序遍历的特点,根 ...
分类:
其他好文 时间:
2021-06-29 16:05:14
阅读次数:
0
三元环问题 解题思路: 度 = 入度 + 出度 根据 1、度小的连向度大的 2、若度相同,则编号小的连向编号大的 把所有的边建立成有向边(防止后面重复的统计三元环) 然后for循环遍历所有的边 判断所有的边的两端点,判断两个端点有没有连接,如果有连接,那么就ans++。 代码: #include < ...
分类:
其他好文 时间:
2021-06-02 16:59:52
阅读次数:
0
题目链接 #题目大意 求n个数的子序列的最大异或和。 #解题思路 求出n个数的线性基并排序,然后将k二进制异或上线性基中对应的代表元素即可。 #代码 const int maxn = 2e5+10; ll arr[maxn]; vector<ll> b; //b中存的每个二进制位的代表元素 void ...
分类:
其他好文 时间:
2021-06-02 13:29:58
阅读次数:
0
重要技巧:利用该英文字母的对应ASCII作为数组下标,来记录该字母的信息。
解题思路:
贪心策略:局部最优大区间划分,只不过这次是根据字母的最后一次出现的位置确定区间的最大值,因为字母是无规律分部,所以区间的最大值会跳跃性增加,不在是+1递增等规律递增 ...
分类:
其他好文 时间:
2021-05-24 16:06:59
阅读次数:
0
分类:数组-二维数组及滚动数组 题目描述: 包含整数的二维矩阵 M 表示一个图片的灰度。你需要设计一个平滑器来让每一个单元的灰度成为平均灰度 (向下舍入) ,平均灰度的计算是周围的8个单元和它本身的值求平均,如果周围的单元格不足八个,则尽可能多的利用它们。 解题思路: 遍历矩阵 对于矩阵中的每一个单 ...
分类:
编程语言 时间:
2021-05-24 13:19:23
阅读次数:
0
解题思路 找到子问题 if p[i]= s[j] or p[i] ='.' : match(s[0..j-1],p[0..i-1]) else return false if p[i] = '' : match(s[0..j] ,p[0..i-1]) // is empty or p[i-1]p[i ...
分类:
其他好文 时间:
2021-05-24 10:39:50
阅读次数:
0
题目描述: 统计一个数字在升序数组中出现的次数。 例如: [1,2,3,3,3,3,4] 3 返回:4 解题思路: 看到题目,可直接暴力求解,循环数组,找出出现次数,但此时时间复杂度为O(n)。显然直接遍历,没有很好的利用题目中升序这个已知要求,我们只需要找到目标数字第一次和最后一次出现的位置,并且 ...
分类:
编程语言 时间:
2021-05-24 04:50:00
阅读次数:
0
【题目来源】 https://leetcode-cn.com/problems/zhong-jian-er-cha-shu-lcof/ 【题目内容】 【解题思路】 思路一:遍历(超出时间限制) 将数组中的每一个数字和后面的所有数字进行比较,当发现相等时,即为结果。 int findRepeatNum ...
分类:
其他好文 时间:
2021-05-24 03:01:03
阅读次数:
0
正题 题目链接:https://www.luogu.com.cn/problem/CF1511G 题目大意 给出$n*m$的棋盘上每一行有一个棋子,双方轮流操作可以把一个棋子向左移动若干步(不能不动),无法操作者输。 $q$次询问只留下期盼的$l\sim r$列时的胜负情况。 解题思路 右边界就是一 ...
分类:
其他好文 时间:
2021-05-23 23:29:36
阅读次数:
0
分类:数组-统计数组中的元素 题目描述: 给定一个整数数组 a,其中1 ≤ a[i] ≤ n (n为数组长度), 其中有些元素出现两次而其他元素出现一次。 找到所有出现两次的元素。 你可以不用到任何额外空间并在O(n)时间复杂度内解决这个问题吗? 解题思路: 由于数字i在1到n之间,可以将nums[ ...
分类:
编程语言 时间:
2021-05-23 23:05:32
阅读次数:
0