jjzjj

代码随想录算法训练营第六天|454.四数相加II,383. 赎金信,15. 三数之和,18. 四数之和。

代码随想录算法训练营第六天|454.四数相加II,383.赎金信,15.三数之和,18.四数之和。454.四数相加II383.赎金信15.三数之和18.四数之和454.四数相加II题目链接:454.四数相加II,难度:中等【实现代码】classSolution{public:intfourSumCount(vectorint>&nums1,vectorint>&nums2,vectorint>&nums3,vectorint>&nums4){intn=nums1.size();intresult=0;unordered_mapint,int>m;intsum;for(inti=0;in;i++

代码随想录算法训练营第七天|454.四数相加II,383. 赎金信,15. 三数之和,18. 四数之和,总结

每天要做运动哦。目录 454.四数相加II 383. 赎金信 15. 三数之和 18. 四数之和 总结   454.四数相加II 建议:本题是 使用map 巧妙解决的问题,好好体会一下 哈希法 如何提高程序执行效率,降低时间复杂度,当然使用哈希法 会提高空间复杂度,但一般来说我们都是舍空间 换时间, 工业开发也是这样。题目链接/文章讲解/视频讲解:代码随想录题目:给你四个整数数组 nums1、nums2、nums3 和 nums4 ,数组长度都是 n ,请你计算有多少个元组 (i,j,k,l) 能满足:0nums1[i]+nums2[j]+nums3[k]+nums4[l]==0思路:这次试一

代码随想录算法训练营第七天|454.四数相加II、383. 赎金信、15. 三数之和、18. 四数之和

454题.四数相加II454.四数相加II-力扣(LeetCode)解题思路这道题目是四个独立的数组,只要找到A[i]+B[j]+C[k]+D[l]=0就可以,不用考虑有重复的四个元素相加等于0的情况首先定义一个unordered_map,key放a和b两数之和,value放a和b两数之和出现的次数。遍历大A和大B数组,统计两个数组元素之和,和出现的次数,放到map中。定义int变量count,用来统计a+b+c+d=0出现的次数。在遍历大C和大D数组,找到如果0-(c+d)在map中出现过的话,就用count把map中key对应的value也就是出现次数统计出来。最后返回统计值count就可

代码随想录算法训练营第7天|● 454.四数相加II ● 383. 赎金信 ● 15. 三数之和 ● 18. 四数之和

454.四数相加||思路:把四个数组分为两个一组,遍历a,b,并把a+b的值存储在map中,key记录a+b的值,value记录a+b出现的次数。若要四数相加为0,则c+d与a+b需要互为相反数,即a+b=-(c+d),然后遍历c,d并在map中查找是否有a+b=-(c+d),若有则把key为-(c+d)或a+b的value(该值出现的次数)加入计数器.时间复杂度为O()本题用map的好处是当出现索引下标值比较大时,不会像数组需要定一个很大的空间。代码:intfourSumCount(vector&nums1,vector&nums2,vector&nums3,vector&nums4){un

383. 救赎信

给你两个字符串:ransomNote 和 magazine ,判断 ransomNote 能不能由 magazine 里面的字符构成。如果可以,返回 true ;否则返回 false 。magazine 中的每个字符只能在 ransomNote 中使用一次。示例1:输入:ransomNote="a",magazine="b"输出:false示例2:输入:ransomNote="aa",magazine="ab"输出:false示例3:输入:ransomNote="aa",magazine="aab"输出:true提示:1ransomNote 和 magazine 由小写英文字母组成方法1:(1

代码随想录算法训练营第七天 | LeetCode454 四数相加Ⅱ LeetCode383 赎金信 LeetCode15 三数之和 LeetCode18 四数之和

LeetCode454四数相加Ⅱ题目链接:四数相加Ⅱ文章链接:四数相加Ⅱ视频链接:四数相加Ⅱ思路因为C++还在学习中,还没到set和map这里,所以就先看视频了。不过这题肯定有暴力的解法,就是用四个for循环遍历所有的情况,用count记录,然后count++,最终返回count即可,但时间复杂度是n的四次方,不太建议这么做。--------------------------------------------------------以下是看完视频总结的思路--------------------------------------------------------大体的思路是这样的,四个

代码随想录算法训练营第七天 | 454.四数相加II、383.赎金信、15.三数之和、18.四数之和

454.四数相加II 一、题目详情给你四个整数数组 nums1、nums2、nums3 和 nums4 ,数组长度都是 n ,请你计算有多少个元组 (i,j,k,l) 能满足:0nums1[i]+nums2[j]+nums3[k]+nums4[l]==0示例1:输入:nums1=[1,2],nums2=[-2,-1],nums3=[-1,2],nums4=[0,2]输出:2解释:两个元组如下:1.(0,0,0,1)->nums1[0]+nums2[0]+nums3[0]+nums4[1]=1+(-2)+(-1)+2=02.(1,1,0,0)->nums1[1]+nums2[1]+nums3[0

初级商务英语(383)

deletevt.删去,删除记联想记忆:de(去掉)+let(让)+e→把…去掉→删除例Thiscontractisinvalid,asyoudeletedsomeimportantdetailsfromitwithoutouragreement.这份合同是无效的,因为你未经我们允许就从中删除了一些重要信息。商deletefiles/accounts/messages删除文件/账户/信息搭delete...from...从…中删除…派deletionn.删除varyvt.改变,多样化vi.变化,不同记发音记忆:vary音似very(非常)→种类非常多→多样化例Iwouldliketohavea

STM32驱动海凌科FPM383C指纹模块

打开灯光 //闪烁灯光 unsignedcharTurn_Flash_Light[23]={0xF1,0x1F,0xE2,0x2E,0xB6,0x6B,0xA8,0x8A,0x00,0x0C,0x81,0x00,0x00,0x00,0x00,0x02,0x0f,0x04,0x01,0x14,0x14,0x05,0xBD};F11FE22EB66BA88A000C8100000000020f0401141405BD是否有手指按压 //查询手指在位状态 unsignedcharQuery_Finger_State[18]={0xF1,0x1F,0xE2,0x2E,0xB6,0x6B,0xA8,0x

代码随想录算法训练营第七天 | 454.四数相加II,383. 赎金信,15. 三数之和,18. 四数之和

代码随想录算法训练营第七天|454.四数相加II,383.赎金信,15.三数之和,18.四数之和454.四数相加II:eyes:题目总结:eyes:383.赎金信暴力解法:computer:哈希解法:computer::eyes:题目总结:eyes:15.三数之和哈希解法双指针:eyes:题目总结:eyes:18.四数之和:eyes:题目总结:eyes::balloon:心得收获454.四数相加II题目链接视频讲解给你四个整数数组nums1、nums2、nums3和nums4,数组长度都是n,请你计算有多少个元组(i,j,k,l)能满足:0nums1[i]+nums2[j]+nums3[k]+
12