对即将找工作的大学生,研究生都爱刷leetcode的题目,但是刚刚接受无法适从,或是一时半会儿想不到解法,没关系,leetcode题解PDF可一带你慢慢了解思路过程。
目录3.4Addbinary615.1.5BinaryTreeLevelOr-3.5LongestPalindromicSubstring.62dertraversalil3.6RegularExpressionMatching665.1.6BinaryTreeZigzag3.7WildcardMatching67LevelOrdertraversal.963.8LongestCommonPrefix5.1.7RecoverBinarySearch3.9ValidNumber70Tree983.10Integertoroman725.1.8SameTree3.11RomantoInteger5.1.9SymmetricTree1013.12CountandSay745.1.10BalancedBinaryTree..1023.13Anagrams755.1.11FlattenBinaryTreeto3.14SimplifyPath76LinkedList1033.15LengthofLastWord775.1.12PopulatingNextRightPointersineachnodeii105第4章栈和队列7952二叉树的构建1074.1栈795.2.1ConstructBinaryTree4ValidParentheses79fromPreorderandIn4.1.2LongestvalidParenorderTraversatheses805.2.2ConstructBinaryTree4.1.3LargestRectangleinfromInorderandposHistogram82torderTraversal1084.14Evaluatereversepol-53二叉查找树109ishnotation845.3.1UniqueBinarySearch4,2队列85Trees5.3.2UniqueBinarySearch第5章树86Treesli.1105.1二叉树的遍历865.3.3ValidateBinarySearch5.1.1BinaryTreePreorderTreeTraversal865.3.4ConvertSortedarrayto5.1.2BinaryTreeInorderBinarySearchTreel12Traversal885.3.5ConvertSortedListto5.1.3BinaryTreePostorderBinarysearchtree113Traversal9054二叉树的递归1155.1.4BinaryTreeLevelOr5.4.1MinimumDepthofBidertraversalnarylree115目录5.4.2MaximumDepthofBi8.32重新实现nextpermunaryTree116tation1425.4.3PathSum117833递归.1435.44PathSumil1188.4PermutationsII1445.4.5BinaryTreeMaximum8.4.1nextpermutation...144PathSuum119842重新实现nextpermu5.4.6PopulatingNextRighttation144Pointersineachnode12084.3递归1445.4.7SumRoottoLeafNum8.5Combinations146bers122851递归146852迭代147第6章排序1238.6LetterCombinationsofaphone6.1MergeSortedArray123umber1476.2MergeTwoSortedLists12486.1递归1486.3MergekSortedLists124862迭代96.4InsertionSortList125第9章广度优先搜索1506.5Sortlist1269.1WordLadder1506.6FirstMissingPositive1279.2WordLadderil..1526.7SortColors289.3Surroundedregions154第7章查找94小结15613194.1适用场景1567.1Searchforarange131942思考的步骤.1567.2SearchInsertPosition.13294.3代码模板1577.3Searcha2DMatrix133第10章深度优先搜索162第8章暴力枚举法13510.1PalindromePartitioning..1628.1Subsets13510.2UniquePaths1658.1.1递归1350.2.1深搜1658.1.2迭代.13710.22备忘录法.1658.2Subsetsil13810.23动规166821递归1381024数学公式167822迭代.14110.3UniquePathsIl1688.3Permutations14210.3.1备忘录法1688.3.1nextpermutation14210.3.2动规.169目录10.4N-Queens16913.4Maximalrectangle19910.5N-QueensII17213.5BestTimetoBuyandSellStock10.6Restoreipaddresses17320010.7CombinationSum17413.6InterleavingString20110.8CombinationSumIl17513.7ScrambleString20310.9GenerateParentheses.17713.8MinimumPathSum20810.10Sudokusolver17813.9EditDistance21010.11WordSearch.18013.10DecodeWays.21210.12小结18113.11DistinctSubsequences21310.12.1适用场景1813.12WordBreak21410.122思考的步骤1811313WordBreakil21610.12.3代码模板183第14章图21810.12.4深拽与回溯法的区别.18414.1CloneGraph10.12.5深搜与递归的区别..184第15章细节实现题221第11章分治法18515.1ReverseInteger2211.1Pow(x,n)18515.2PalindromeNumber222qrt(x18615.3InsertInterval223第12章贪心法18715.4MergeIntervals22412.1Jumpgame18715.5MinimumWindowSubstring..22512.2JumpgameIl18815.6MultiplyStrings22712.3BestTimetobuyandsellstock19015.7SubstringwithConcatenation12.4BestTimetobuyandsellstock191ofallwords23012.5LongestSubstringWithoutre15.8Pascal,sTrianglepeatingCharacters19215.9PascalsTriangleIl23212.6ContainerwithmostWater.19315.10Spiralmatrix23315.11SpiralmatrixII234第13章动态规划19515.12ZigZagConversion23613.1Triangle19515.13DivideTwoIntegers23713.2MaximumSubarray19615.14TextJustification23813.3PalindromePartitioningII19815.15MaxPointsonaline目录第1章编程技巧在判断两个浮点数a和b是否相等时,不要用a=-b,应该判断二者之差的绝对值fabs(a-b)是否小于某个阈值,例如1e-9。
判断一个整数是否是为奇数,用x%2!=0,不要用x%2==1,因为x可能是负数用char的值作为数组下标(例如,统计字符串中每个字符出现的次数),要考虑到char可能是负数。
有的人考虑到了,先强制转型为unsignedint再用作下标,这仍然是错的。
正确的做法是,先强制转型为unsignedchar,再用作下标。
这涉及C++整型提升的规则,就不详述了。
以下是关于STL使用技巧的,很多条款来自《EffectiⅤveStL》这本书。
vector和string优先于动态分配的数组首先,在性能上,由于vector能够保证连续内存,因此一旦分配了后,它的性能跟原始数组相当其次,如果用new,意味着你要确保后面进行了delete,一旦忘记了,就会岀现BUG,且这样需要都写一行delete,代码不够短再次,声明多维数组的话,只能一个一个new,例如:int**ary=newint*[row_num];for(inti=0:i<rownum;++1)ary[i]newint[col_num]用vector的话一行代码搞定,vector<vector<int>>ary(row_num,vector<int>(col_num,0))使用reserve来避免不必要的重新分配第2章线性表这类题目考察线性表的操作,例如,数组,单链表,双向链表等。
21数组2.1.1RemoveDuplicatesfromSortedarray描述Givenasortedarray,removetheduplicatesinplacesuchthateachelementappearonlyonceandreturnthenewlengthDonotallocateextraspaceforanotherarray,youmustdothisinplacewithconstantmemoryForexample,GiveninputarrayA=[1,1,2Yourfunctionshouldreturnlength=2,andaisnow[1,2]分析无代码1/LeetCode,RemoveDuplicatesfromSortedArray/时间复杂度0(n),空间复杂度0(1)classSolutiontublicintremoveDuplicates(intA[],intn)tlf(n==oreturnointindex=0:for(inti=1:i<n:i++iif(Alindex!alidA[++index]=Alireturnindex12.1数组代码2//LeetCode,RemoveDuplicatesfromSortedArray//使用STL,时间复杂度0(n),空间复杂度0(1)classSolutionipublicintremoveDuplicates(intA[,intn)treturndistance(A,unique(A,An))代码3/LeetCode,RemoveDuplicatesfromSortedArray/使用STL,时间复杂度0(n),空间复杂度0(1)lassSolutionfublicintremoveDuplicates(intA[],intn)treturnremoveDuplicates(A,A+n,A)-A;template<typenameInIt,typenameoutit>OutItremoveDuplicates(InItfirst,InItlast,OutItoutput)thile(firstlast)i*output++=*firstfirstupper_bound(first,last,*firstreturnoutput相关题目RemoveduplicatesfromSortedArrayIl,见§2.1.22.1.2RemoveDuplicatesfromSortedArrayII描述Followupfor"RemoveDuplicates"Whatifduplicatesareallowedatmosttwice?Forexample,Givensortedarraya=[1,1,1,2,2,3]Yourfunctionshouldreturnlength=5,andAisnow[1,1,2,2,3分析加一个变量记录一下元素出现的次数即可。
这题因为是已经排序的数组,所以一个变量即可解决。
如果是没有排序的数组,则需要引入一个hashmap来记录出现次数4第2章线性表代码1//LeetCode,RemoveDuplicatesfromSortedArrayII/时间复杂度0(n),空间复杂度0(1)//qauthorhex108(https://github.com/hex108)classSolutiontublicintremoveDuplicates(intA[],intn)tlf(n<=2returnnintindex=2for(inti=2:in:1++)if(all]!Alindex-2])ALindex++]=Ali]returnindex;代码2下面是一个更简洁的版本。
上面的代码略长,不过扩展性好一些,例如将occur<2改为ocur<3,就变成了允许重复最多3次。
//LeetCode,RemoveDuplicatesfromSortedArrayII//@author虞航仲(http://weibo.com/u/1666779725)//时间复杂度0(n),空间复杂度0(1)classSolutionipublicintremoveDuplicates(intA[],intn)tmtindex=ofor(intif(i>0&&i<1&&A[i]==A[i-1]&&A[i]==A[i+1])continueAlindex++]=Alireturnindex;相关题目RemoveDuplicatesfromSortedArray,见§2.1.12.1.3SearchinRotatedSortedArray描述Supposeasortedarrayisrotatedatsomepivotunknowntoyoubeforehand
2024/12/7 0:08:16 1.03MB leetcode题解
1
PB中利用api进行串口操作的例程,可以解决PB使用控件时对char(0)的限制
2024/12/2 3:57:11 21KB api 串口 pb
1
用OpenGL实现地球仪,包含了纹理、映射、旋转等作用intmain(intargc,char**argv){glutInit(&argc;,argv);glutInitDisplayMode(GLUT_DOUBLE|GLUT_RGB|GLUT_DEPTH);glutInitWindowSize(600,600);glutInitWindowPosition(100,100);glutCreateWindow("OpenGL地球——LEILEI");glutDisplayFunc(draw_tellurion);glutIdleFunc(Moving);init();glutMainLoop();return0;}
2024/11/23 19:55:47 2KB OpenGL earth
1
Sciblog支持信息和代码此仓库包含支持我的博客的项目,其他信息和代码:。
您可以找到我在发表的所有帖子的列表。
笔记本项目:在这个项目中,我们解释什么是卷积以及如何使用带有MNIST字符识别数据集的MXNet深度学习库来计算CNN。
这里是。
:在本项目中,我们使用PyTorch解释迁移学习的基本方法(微调和冻结),并分析在哪种情况下更好地使用每种方法。
这里是。
:在这些笔记本中,我们展示了如何使用Char-CNN和VDCNN模型执行字符级卷积以进行情感分析。
这里是。
:在本笔记本中,我们展示了许多简单的技术来生成图像,文本和时间序列中的新数据。
这里是。
降:在本项目中,我们使用sklearn和CUDA展示t-SNE算法的示例。
我们使用CNN从图像生成高维特征,然后展示如何将其投影并可视化为二维空间。
这里是。
:在本笔记本中,我们使用GPU上的LightGBM(也可在CPU上)设计实时欺诈检测模型。
然后使用Flask和websockets通过API对模型进行操作。
这里是。
:在本笔记本中,我们演示如何创建图像分类API。
该系统与使用CNTK深度
1
modbus从站源程序unsignedcal_crc(char*pucFrame,charusLen)intreadDO(unsignedwReg,unsigned*pwValue)intreadDI(unsignedwReg,unsigned*pwValue)intreadAO(unsignedwReg,unsigned*pwValue)...
2024/11/6 0:09:01 21KB modbus 从站源程序
1
资源包含有DLL、LIB、H文件可根据需求程序调用函数接口来使用动态库其功能点有两个:生成QR-Code格式的二维码boolQR_Code(char*QR_text,char*bmpSavedPath,QRecLevellevel,QRencodeModehint);生成Data-Matrix格式的二维码boolData_Matrix(char*DM_text,char*bmpSavedPath);资源包附赠(QR二维码开发组件—博客)和(二维码生成图片小软件)版权望断所有,下载请私用!
2024/10/23 12:56:39 2.26MB 生成二维码库
1
资源包含有DLL、LIB、H文件可根据需求程序调用函数接口来使用动态库其功能点有两个:识别QR-Code格式的二维码——QR_Code(IplImage*Image,char*Information);识别Data-Matrix格式的二维码——Data_Matrix(IplImage*Image,char*Information);版权望断所有,下载请私用!
2024/10/7 17:50:42 653KB 识别二维码库
1
将二维数组传递给本函数,本函数会将数组显示为图像。
注意数组传递前需先转换为char型。
图像显示是windows编程的基础,本程序可作为一个子函数用于调用,可同时显示多张图像。
2024/8/30 17:15:09 1.6MB vc 二维数组 显示图像 windows编程
1
2017年全国省市区行政区域sql,mysql版本,结构如下:CREATETABLE`district`(`id`smallint(5)NOTNULL,`name`varchar(270)DEFAULTNULL,`parent_id`smallint(5)DEFAULTNULL,`code`char(30)DEFAULTNULL,`order`smallint(2)DEFAULTNULL,PRIMARYKEY(`id`))ENGINE=InnoDBDEFAULTCHARSET=utf8;
2024/8/22 9:56:29 255KB 行政区域 sql
1
超漂亮同学录2.0全功能版本介绍。
管理说明:初次使用本同学录请你用管理员帐号:wsjycnwsjycn登陆同学录首页。
登陆后会在顶部导航菜单显示管理两字。
点登陆后输入管理员密码wsjycnwsjycn进入后台后修改同学录信息。
为了安全。
请修改前台和后台登陆密码增强功能:1.增加了非常漂亮的许愿插件2.修正了部分用户反映的不能上传照片的问题3.增加了照片评论的字数到2000字4.增加了留言,留言回复,论坛发贴和回帖的字数5.修正了后台登陆的出现的错误。
6.完善了管理员管理的功能。
7.去除了网友反映强烈的几个连接功能简介:1、同学录具有更换界面的功能,拥有13套漂亮的界面,你可以为您同学录选择适合的风格2、完善的用户管理功能。
管理员可以是设置用户等级,以及相关等级的权限3、注册发送邮件和短信功能;
用户可以在站内相互发送信息4、班级留言本,可以给同学留言,也可以回复同学的留言5、班级论坛,讨论大家关心,喜欢的问题6、班级相册,完善相册分类功能,相册浏览排行榜,想册评论功能7、班级点歌,为同学点歌。
班级点歌同时带有点歌提示功能。
8、完善的个人管理中心,用户可以设置自己的资料,修改密码9、班级名片功能,用户可以查看同学的详细资料10、班级娱乐功能,社区赛马,社区赌场,社区彩票,班级银行,请你找桩,南非采矿,成语接龙,海边钓鱼,许愿中心。
11、新增班级帮助中心。
为初级用户提供些帮助说明12、强大的后台管理:后台可以修改网站几乎所有的相关信息,方便大家修改;
相应的补丁,及同学录相关参数,在我们的官方网站()上有更新发布。
简要说明:魅力网络承接程序修改,和美化。
为你提供域名注册,虚拟主机等上网专业服务。
文件说明:1、数据库文件为Date/melyytxl.asp文件,数据库中附带了防止下载相应的表,数据库中的notdownload表不能删除。
2、数据库文件为Date/plus.asp文件,数据库中附带了防止下载相应的表,数据库中的notdownload表不能删除。
3、前台和后台登陆名和登陆密码都为:登陆名:wsjycn 登陆密码:wsjycn许愿中心管理员登陆名和登陆密码都为:登陆名:wsjycn 登陆密码:wsjycn4、相关数据:文件大小:4.18M5、测试环境:MicrosoftWindowsXPMicrosoftWindows98MicrosoftWindowsMEMicrosoftWindows2000MicrosoftInternetInformationServices(IIS5.1)MicrosoftAccess2000底部信息在INC\char.asp这个文件中改
2024/7/18 18:01:44 5.66MB 同学录网站系统 源代码
1
共 64 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡