草庐IT

LeetCode刷题第7周小结

全部标签

【42页动态规划学习笔记分享】动态规划核心原理详解及27道LeetCode相关经典题目汇总

    《博主简介》小伙伴们好,我是阿旭。专注于人工智能AI、python、计算机视觉相关分享研究。✌更多学习资源,可关注公-仲-hao:【阿旭算法与机器学习】,共同学习交流~👍感谢小伙伴们点赞、关注!《------往期经典推荐------》一、AI应用软件开发实战专栏【链接】二、机器学习实战专栏【链接】,已更新31期,欢迎关注,持续更新中~~三、深度学习【Pytorch】专栏【链接】四、【StableDiffusion绘画系列】专栏【链接】《------正文------》这篇文章是博主在学习动态规划系列算法过程中精心总结的42页学习笔记,其中包含了动态规划的原理详解以及LeetCode中的动

【LeetCode】剑指 Offer(28)

目录题目:剑指Offer54.二叉搜索树的第k大节点-力扣(Leetcode)题目的接口:解题思路:代码:过啦!!!题目:剑指Offer55-I.二叉树的深度-力扣(Leetcode)题目的接口:解题思路:代码:过啦!!!题目:剑指Offer55-II.平衡二叉树-力扣(Leetcode)题目的接口:解题思路:代码:过啦!!!写在最后:题目:剑指Offer54.二叉搜索树的第k大节点-力扣(Leetcode)题目的接口:/***Definitionforabinarytreenode.*structTreeNode{*intval;*TreeNode*left;*TreeNode*right;

高通平台(Qualcomm) Android 10 /11/12 user版本默认打开adb 调试小结

1.流程  USB插入接收广播授权->建立adb连接服务->执行adb命令2.adb相关属性ro.secure=0开启root权限ro.adb.secure=11开启adbRSA指纹认证,0关闭ro.debuggable=11开启adbdebug,0关闭3.修改源码位置  build/core/main.mk部分代码如下图所示4、/PA1032/frameworks/base/packages/SystemUI/src/com/android/systemui/usb5其他:需要注意更换电脑需要将默认.android目录adbkey.pub/adbkey文件替换到misc目录adb_keys文

【map】【单调栈 】LeetCode768: 最多能完成排序的块 II

作者推荐【贪心算法】【中位贪心】.执行操作使频率分数最大本文涉及的基础知识点单调栈分类、封装和总结排序map区间合并题目给你一个整数数组arr。将arr分割成若干块,并将这些块分别进行排序。之后再连接起来,使得连接的结果和按升序排序后的原数组相同。返回能将数组分成的最多块数?示例1:输入:arr=[5,4,3,2,1]输出:1解释:将数组分成2块或者更多块,都无法得到所需的结果。例如,分成[5,4],[3,2,1]的结果是[4,5,1,2,3],这不是有序的数组。示例2:输入:arr=[2,1,3,4,4]输出:4解释:可以把它分成两块,例如[2,1],[3,4,4]。然而,分成[2,1],[

LeedCode刷题---二分查找类问题

顾得泉:个人主页个人专栏:《Linux操作系统》  《C/C++》  《LeedCode刷题》键盘敲烂,年薪百万!一、二分查找题目链接:二分查找题目描述       给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target  ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。示例1:输入:nums=[-1,0,3,5,9,12],target=9输出:4解释:9出现在nums中并且下标为4示例 2:输入:nums=[-1,0,3,5,9,12],target=2输出:-1解释:2不存在nums中因此返回-1提示:你可以假设 nums

LeetCode | 100. 相同的树

LeetCode|100.相同的树OJ链接判断两个节点是否等于空,两个都等于空就直接返回true如果一个等于空,另一个不等于空,说明false然后再判断两个树的值是否相等最后递归p的左,q的左,p的右,q的右boolisSameTree(structTreeNode*p,structTreeNode*q){if(p==NULL&&q==NULL)returntrue;if(p==NULL||q==NULL)returnfalse;if(p->val!=q->val)returnfalse;returnisSameTree(p->left,q->left)&&isSameTree(p->righ

【单调栈】LeetCode:2818操作使得分最大

作者推荐map|动态规划|单调栈|LeetCode975:奇偶跳本文涉及的基础知识点单调栈分类、封装和总结题目给你一个长度为n的正整数数组nums和一个整数k。一开始,你的分数为1。你可以进行以下操作至多k次,目标是使你的分数最大:选择一个之前没有选过的非空子数组nums[l,…,r]。从nums[l,…,r]里面选择一个质数分数最高的元素x。如果多个元素质数分数相同且最高,选择下标最小的一个。将你的分数乘以x。nums[l,…,r]表示nums中起始下标为l,结束下标为r的子数组,两个端点都包含。一个整数的质数分数等于x不同质因子的数目。比方说,300的质数分数为3,因为300=2*2*3*

【数据结构】LRU缓存的简单模拟实现(leetcode力扣146LRU缓存)

文章目录一、定义二、LRU模拟实现二、代码实现一、定义LRU是LeastRecentlyUsed的缩写,意思是最近最少使用,它是一种Cache替换算法。Cache的容量有限,因此当Cache的容量用完后,而又有新的内容需要添加进来时,就需要挑选并舍弃原有的部分内容,从而腾出空间来放新内容。LRUCache的替换原则就是将最近最少使用的内容替换掉。二、LRU模拟实现146.LRU缓存下面我们就借力扣的这道题来简单实现一个题目中要求我们以O(1)的时间复杂度来完成,查找的话我们首先肯定会想到哈希表,但又涉及一个问题,我们查找完之后还需要更新一下刚刚查找数据的位置,将这个数据置为是新的数据,我们如何

LeetCode:455. 分发饼干——贪心算法

🍎道阻且长,行则将至。🍓🌻算法,不如说它是一种思考方式🍀算法专栏:👉🏻123贪心算法是在每个阶段选取局部最优解,最终得到全局最优解的一种思想。贪心算法与动态规划的思路相似,但贪心算法要在每个阶段选择最优解,而这个最优解不一定是全局最优解,贪心算法在某些情况并不能得到全局最优解。贪心算法的基本思路:找到最优子结构:将问题分解为多个子问题,并且每个子问题具有最优子结构,即解决子问题的最优解可以组合成原问题的最优解。找到贪心策略:为了解决每个子问题,找出一种最优策略,使得每个子问题都采用该策略,最终可以得到原问题的最优解。证明贪心策略的合理性:贪心策略在每个阶段选取局部最优解,最终可以得到全局最优解

每日一题——LeetCode1002

方法一个人方法:将words里的字符串的每个字符出现的次数都转为键值对的形式:循环求两两键值对数组的交集:最后的交集就是重复出现的字符和次数,把键值对转回字符数组形式即可思路对了,但是太复杂了,时间效率很低varcommonChars=function(words){vararr=[],newWords=[],union=[]for(varitemofwords){for(varcharofitem){if(!arr[char]){arr[char]=1}else{arr[char]++}}newWords.push(arr)arr=[]}arr=newWords[0]for(vari=1;i