算法
文章平均质量分 79
刷题题解
Charles_陈
什么都不会就会划水摸鱼的沙雕研究僧
展开
-
1-回溯算法
文章目录回溯算法综述代码框架:Tips例子回溯算法综述解决一个回溯问题,实际上就是一个决策树的遍历过程,因此只需要思考如下的三个问题:路径:已做出的选择选择列表:可以做的选择结束条件:已到达决策树的底层,无法再进行选择操作了代码框架:result = []def backtrack(路径, 选择列表): if 满足结束条件: result.add(路径) return for 选择 in 选择列表: 做选择 backtrac原创 2022-05-09 16:02:47 · 180 阅读 · 0 评论 -
LeetCode-剑指offer2-65-不用加减乘除做加法
LeetCode-剑指offer2-49-丑数文章目录LeetCode-剑指offer2-49-丑数一、题目描述二、解题思路1.十进制2.如何用二进制完成以上的步骤?一、题目描述写一个函数,求两个整数之和,要求在函数体内不得使用 “+”、“-”、“*”、“/” 四则运算符号。示例:输入: a = 1, b = 1输出: 2根据题意, 不能使用加减的话,基本上就是需要考虑使用位运算了。二、解题思路1.十进制如果是十进制的话,我们是如何完成加法计算的?对于12+15 = ?:我们可原创 2022-03-12 21:48:57 · 8824 阅读 · 0 评论 -
LeetCode-剑指offer2-56-I. 数组中数字出现的次数
LeetCode-剑指offer2-56-I. 数组中数字出现的次数文章目录LeetCode-剑指offer2-56-I. 数组中数字出现的次数一、题目描述二、解题思路1.暴力法2.位运算2.1简化问题2.2.解法思路一、题目描述一个整型数组 nums 里除两个数字之外,其他数字都出现了两次。请写程序找出这两个只出现一次的数字。要求时间复杂度是O(n),空间复杂度是O(1)。示例:输入:nums = [4,1,4,6]输出:[1,6] 或 [6,1]输入:nums = [1,2,10,4原创 2022-03-02 22:10:14 · 139 阅读 · 0 评论 -
LeetCode-剑指offer2-49-丑数
LeetCode-剑指offer2-49-丑数文章目录LeetCode-剑指offer2-49-丑数一、题目描述二、解题思路1.暴力法2.动态规划2.1丑数的排列2.2.有序化扩展丑数数组一、题目描述我们把只包含质因子 2、3 和 5 的数称作丑数(Ugly Number)。求按从小到大的顺序的第 n 个丑数。示例:输入: n = 10输出: 12解释: 1, 2, 3, 4, 5, 6, 8, 9, 10, 12 是前 10 个丑数根据题意, 一个丑数乘以 2, 3, 5 之后, 一原创 2022-02-25 20:38:03 · 560 阅读 · 0 评论 -
欧拉路径与欧拉回路——基本概念+定理和推论+求解
基本概念欧拉路径:如果图G中的一个路径包括每个边恰好一次。欧拉回路:如果一个回路是欧拉路径,则它是欧拉回路。具有欧拉回路的图称为欧拉图(简称E图)。具有欧拉通路但不具有欧拉回路的图称为半欧拉图。定理和推论欧拉通路和欧拉回路的判定是很简单的,请看下面的定理及推论。无向图G存在欧拉通路的充要条件是:G为连通图,并且G仅有两个奇度结点(度数为奇数的顶点)或者无奇度结点。推论1:当G是...原创 2020-03-05 14:47:14 · 1291 阅读 · 0 评论 -
Leetcode-146.LRU缓存机制---(CMU15-445 lab2)思路详解
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、题目描述?二、关键点三、优化四,代码小结前言提示:在CMU15-445的lab2中我们需要实现一个数据库page的控制机制,也就是LRU缓存机制,即当内存容量达到上限时,我们应该移除最久未使用的page。一、题目描述?运用你所掌握的数据结构,设计和实现一个 LRU (最近最少使用) 缓存机制 。实现 LRUCache 类:LRUCache(int capacity) 以正整数作为容量 capacity 初始原创 2021-09-01 17:25:13 · 262 阅读 · 0 评论