对即将找工作的大学生,研究生都爱刷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
SecureCRT8.7.3Build2279(X64)官方最新原版搬运scrt-x64.8.7.3.2279.exe(md5:740eb0fffa8a6c153071e7544cb44a9e)SecureCRT是VanDyke公司一款支持SSH1、SSH2、Telnet、Telnet/TLS、RLogin、Serial、TAPI和Raw协议的终端仿真程序,是Windows下经典的登录UNIX或Linux服务器的神器工具。
从毕业第一份工作开始,单位老师傅就介绍这款软件给我,目前我已工作十余年,其间也使用过Putty、XShell、SSHSecureShellSl
2024/12/6 21:34:51 28.03MB SecureCRT SSH ZWT
1
桂林电子科技大学2013年硕士研究生入学考试复试试卷考试科目代码:204考试科目名称:通信原理A请注意:答案必须写在答题纸上(写在试卷上无效)。
一、 问答题(每题5分,总共50分)(1) 根据你所学的通信原理知识,请回答下列问题:请画出数字通信系统模型;
简述各个组成部分的主要功能和特点;
回答衡量数字通信系统性能好坏的主要性能指标。
(2) 通信系统的同步需考虑哪些?(3) 调制信道模型用加性干扰和乘性干扰表示信道对于信号传输的影响,根据乘性干扰的不同,信道可分为哪两种?(4) 请写出信道容量的公式,有哪几个主要参数,其相互关系如何?(5) 实际中为了减小码间串扰,需要采用什么措施进行补偿?眼图为直观评价接收信号的质量提供了一种有效的实验方法,它的作用是什么?(6) 二进制的数字调制有那两种基本方式?试比较有效性和可靠性。
(7) 试写出下列英文缩写的中文全称:QAMCDMAOFDMQPSKAWGN。
(8) 模拟信号经过哪几个步骤变成数字信号?其中哪个步骤会带来什么误差?(9) 某数字传输系统的码元速率是1200b/s,接收端在0.5个小时内共收到216个错误码元,试计算该系统的误码率Pe。
(10) 英汉互译:(英译汉)Wedescribedvarioustypesofmodulationmethodsthatmaybeusedtotransmitdigitalinformationthroughacommunicationchannel.Aswehaveobserved,themodulatoratthetransmitterperformsthefunctionofmappingtheinformationsequenceintosignalwaveforms.(汉译英)本章将研究噪声对调制系统可靠性的影响,特别是深入研究各种调制方法的发送信号受到加性高斯白噪声恶化时,最佳接收机的设计和性能特征。
2024/12/6 14:58:40 3.22MB 桂电 考研 复试
1
1、灵活的认证授权模式,比如:一机一码加密,video2exe,一码通授权等;
可以指定播放次数、播放时间和截止日期等;
2、可以设置播放时断开网络,禁止用户通过远程共享或者远程翻录;
3、可以设置播放时禁止开启其他窗口,以便学员可以专心学习;
4、可以指定是否可以提供免费试看试听;
5、您可以设置提示语,以便告知用户通过何种途径与您联系获得播放密码;
6、可以设置视频播放尺寸和拉伸效果;
7、可以防止屏幕录像和拷屏;
8、可以禁止在虚拟机中播放;
9、可以指定防翻录跟踪水印;
10、本系统也可以结合网络应用,通过网络向客户发放播放密码,结合会员验证等方式进行播放授权,无需人工参与;
打包方式与授权方式请参看下载包中的视频教程。
飓风加密JFVideoEncrypt加密文件:1、选择待加密视频,可以添加多个文件到列表内2、指定加密秘钥,只有知道加密秘钥的人才可以创建播放密码3、执行加密创建播放密码:1、指定加密时使用的加密秘钥2、指定用户的机器码3、创建播放密码如果需要创建带播放次数控制的播放密码,可以勾选下面的相关控制选项再创建。
2024/12/6 3:50:09 9.46MB JFVideo
1
适用于会计、审计、税务人员
2024/12/5 11:35:53 1.34MB 输入法词库引用
1
ImageGlass功能特色:支持70多种格式ImageGlass支持查看GIF,SVG,HEIC和RAW等觉的70多种图像格式。
ImageGlas支持最常见的图像格式。
虽然默认格式组包含轻量级图像格式并且能够自动加载,但可选格式组不是。
这是为了避免应用程序的繁重工作负载和性能中断。
此外,用户可以轻松自定义此扩展名列表。
轻巧,多功能图像之间快速切换,让你体验浏览图片也能有快感个性化轻松安装新的语言包和主题。
ImageGlass支持数十个国家语言,当然你也可以为ImageGlass免费提供本地化翻译。
ImageGlass同样也支持多个主题皮肤,让你使用其它不再感觉单调。
ImageGlass快捷键ImageGlass支持快捷方式,可以节省您在日常工作流程中的时间。
您还可以在工具提示或菜单中找到快捷方式。
将鼠标悬停在元素上以显示其工具提示。
如果元素有快捷方式,工具提示将包含它。
ImageGlass是另一个开源的基本图像查看器,虽然简单,但它受益于轻量级所带来的速度,是Windows用户的不错选择。
要求支持的操作系统:7SP1,8,8.1,10运行时:.NETFramework4.7.1+
2024/12/5 9:50:49 15.81MB 轻量级开源图像浏览器
1
识别0-9十个数字,BP神经网络数字识别源代码使用说明第一步:训练网络。
使用训练样本进行训练。
(此程序中也可以不训练,因为笔者已经将训练好的网络参数保存起来了,读者使用时可以直接识别)第二步:识别。
首先,打开图像(256色);
再次,进行归一化处理,点击“一次性处理”;
最后,点击“R”或者使用菜单找到相应项来进行识别。
识别的结果显示在屏幕上,同时也输出到文件result.txt中。
该系统的识别率一般情况下为90%。
此外,也可以单独对打开的图片一步一步进行图像预处理工作,但要注意,每一步工作只能执行一遍,而且要按顺序执行。
具体步骤为:“256色位图转为灰度图”-“灰度图二值化”-“去噪”-“倾斜校正”-“分割”-“标准化尺寸”-“紧缩重排”。
注意,待识别的图片要与win.dat和whi.dat位于同一目录,这两文件保存训练后网络的权值参数。
具体使用请参照书中说明。
2024/12/5 8:55:53 60KB BP神经网络
1
《数字电子技术》是关于数字电子技术的经典教材,内容涉及数字电子技术的基本概念、数制、逻辑门、布尔代数和逻辑化简、组合逻辑分析、组合逻辑的作用、计数器、移位寄存器、存储器、可编程逻辑与软件、集成电路技术等。
全书的特色在于示例与习题丰富、图解清晰、语言流畅、写作风格简约。
2024/12/2 19:51:05 136.14MB 数字电子
1
ViewAssessmentResult:Multiple-ChoiceQuiz2Yourperformancewasasfollows:1.Thedegreeofatableisthenumberof_____inthetable.(a)keys(b)columns(c)rows(d)foreignkeysCorrectansweris(b)Yourscoreonthisquestionis:10.00Feedback:(b)--------------------------------------------------------------------------------2.Thearityofatableisthenumberof_____inthetable.(a)keys(b)columns(c)foreignkeys(d)rowsCorrectansweris(b)Yourscoreonthisquestionis:10.00Feedback:(b)--------------------------------------------------------------------------------3.Whatinformationisnecessarywhenspecifyingthestructureofatable?(a)thenameofthetableandtheamountofstoragespacetobeallocatedtothetable(b)thenameofthetable,thenamesofthetable'sattributes,thedatatypesofthetable'sattributes,theformatsofthetable'sattributes,andthemaximumnumberofrowsthatthetablecanhave(c)thenameofthetableandthenamesofthetable'sattributes(d)thenameofthetable,thenamesofthetable'sattributes,thedatatypesofattributes,andtheformatsofattributesCorrectansweris(d)Yourscoreonthisquestionis:10.00Feedback:(d)--------------------------------------------------------------------------------4.TheforeignkeyinatableT1_____thesame_____asthecorrespondingprimarykeyintableT2.musthave,nameneednothave,namemusthave,domain(a)I,II,andIII(b)IandII(c)IandIII(d)IIandIIICorrectansweris(d)Yourscoreonthisquestionis:10.00Feedback:(d)--------------------------------------------------------------------------------5.WhichofthefollowingSQLstatementscanbeusedtoaddarowtoatable?(a)CREATE(b)INSERT(c)APPEND(d)ADDCorrectansweris(b)
2024/12/2 8:58:25 259KB SSD7 Multiple-Choice
1
SuperIO的特点:1)支持二次开发,快速构建自己的通讯数据采集平台软件2)快速构建设备驱动、协议驱动、命令缓冲、自定义参数和实时数据3)快速二次开发图形显示、数据输出、服务驱动4)一个设备驱动,同时支持串口(COM)和网络(TCPServer/TcpClient)通讯机制,可以自由切换5)内置协议驱动,可以把第三方协议转换成自定义的协议6)内置设备命令缓冲器,可以设置命令发送的优先级别7)以插件的方式挂载设备驱动、显示、输出、服务模块等8)以服务驱动方式(IAppService)二次开发OPC服务、4-20mA输出、LED大屏显示、短信服务等9)快速开发、运行稳定、扩展性强大10)适用工业上位机软件,以及系统集成中采集远程设备数据http://www.bmpj.net
2024/12/2 2:19:25 51.9MB SuperIO 串口 网络 工控
1
共 1000 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡