上一页 1 2 3 4 5 6 7 8 9 10 ··· 15 下一页
摘要: 一、基本框架 1、概述 LLVM编译器采用了如下图所示的三段式设计:前端,优化组件和后端。前端组件解析程序源代码,检查语法错误,生成一个基于语言特性的AST来表示输入代码,并将其转换为LLVM IR;优化器作用是中间代码(IR)优化,比如去除无用的变量或者无用的计算,来提高代码运行效率;后端生成目标 阅读全文
posted @ 2023-04-11 19:50 lixycc 阅读(1273) 评论(0) 推荐(0)
摘要: 题目链接:491. 递增子序列 方法:回溯 + 剪枝 解题思路 回溯:在每一个位置的时候判断当前元素是否可选,即是否大于等于前一个元素,满足条件时选取; 剪枝:由于本题目要求不能出现重复的子序列,也就是在回溯的每一层中选择的元素不能相同,因此可以在每一层设置一个平衡树,检测当前元素是否已经在该层的平 阅读全文
posted @ 2023-04-10 21:58 lixycc 阅读(22) 评论(0) 推荐(0)
摘要: 题目链接:1019. 链表中的下一个更大节点 方法:单调栈 解题思路 该类问题详解:单调栈解决 Next Greater Number 一类问题 代码 class Solution { public: vector<int> nextLargerNodes(ListNode* head) { vec 阅读全文
posted @ 2023-04-10 19:58 lixycc 阅读(26) 评论(0) 推荐(0)
摘要: 题目链接:2612. 最少翻转操作数 方法:BFS + AVLTree 解题思路 先不考虑被 $ban$ 的位置: 假设当前 $1$ 的位置在下标 $i$ 上,那么将其按照包含 $i$ 且长度为 $k$ 的数组反转一次所能得到的对应下标的可能结果是一个从 $i - k + 1$ 起始到 $i + k 阅读全文
posted @ 2023-04-09 19:01 lixycc 阅读(96) 评论(0) 推荐(0)
摘要: 题目链接:1017. 负二进制转换 方法一:进制转换 解题思路 除基取余法,当基数 $x$ 为负数时,注意将余数 $c$ 取绝对值。重复操作,$c = abs(n % x), n = (n - c) / x$,直到 $n = 0$。 代码 class Solution { public: strin 阅读全文
posted @ 2023-04-09 01:08 lixycc 阅读(69) 评论(0) 推荐(0)
摘要: 题目链接:1053. 交换一次的先前排列 方法:贪心 解题思路 为了保证字典序最大,应该尽可能的使得左侧的元素不变,首先考虑交换数组靠右侧的两个数字。 那么可以从右往左遍历,找第一个逆序对;若没有则返回原数组; 找到逆序对$(i, i + 1)$后,再对$j$从$i + 1$ ~ $n$遍历,找$a 阅读全文
posted @ 2023-04-09 01:08 lixycc 阅读(22) 评论(0) 推荐(0)
摘要: 题目链接:2608. 图中的最短环 方法:BFS + 技巧 解题思路 环一定包含$edges$数组中的某条边; 遍历$edges$数组,对于某一条边<$u, v$>,以$v$为起点进行$bfs$搜索,禁止通过边<$u, v$>(技巧)。在此种情况下若能搜到$v$,说明存在环,且当前环的长度为$当前层 阅读全文
posted @ 2023-04-09 01:07 lixycc 阅读(45) 评论(0) 推荐(0)
摘要: 题目链接:2607. 使子数组元素和相等 方法:分组 + gcd + 中位数 解题思路 题意:将$arr$中某个元素$+1$或$-1$,使得任意长度为$k$的子数组的元素总和相等,且总操作数最少; 1、首先考虑数组$arr$为非循环数组: 任意$k$长的子数组总和相等,则有下述情形,依次可以将$ar 阅读全文
posted @ 2023-04-09 01:07 lixycc 阅读(67) 评论(0) 推荐(0)
摘要: 题目链接:1039. 多边形三角剖分的最低得分 方法:区间dp 解题思路 区间 DP:最长回文子序列 最优三角剖分【基础算法精讲 22】 代码 回溯写法 class Solution { public: int minScoreTriangulation(vector<int>& values) { 阅读全文
posted @ 2023-04-09 01:06 lixycc 阅读(26) 评论(0) 推荐(0)
摘要: 题目链接:2611. 老鼠和奶酪 方法:贪心 解题思路 题目要求第$mouse1$恰好吃掉 $k$ 块奶酪的情况下,计算最大得分。 假设$mouse1$当前吃掉了下标为$i$处的奶酪,那么应该满足,$diff[i] = reward1[i] - reward2[i]$是当前所有$diff$值的最大值 阅读全文
posted @ 2023-04-09 01:06 lixycc 阅读(33) 评论(0) 推荐(0)
上一页 1 2 3 4 5 6 7 8 9 10 ··· 15 下一页