LeetCodecpp最新中文题解.pdfLeetCodecpp最新中文题解.pdfLeetCodecpp最新中文题解.pdf目录3.4Addbinary615.1.5BinaryTreeLevelOr-3.5LongestPalindromicSubstring.62dertraversalil3.6RegularExpressionMatching665.1.6BinaryTreeZigzag3.7WildcardMatching67LevelOrdertraversal.963.8LongestCommonPrefix5.1.7RecoverBinarySearch3.9ValidNumber70Tree983.10Integertoroman725.1.8SameTree3.11RomantoInteger735.1.9SymmetricTree1003.12CountandSay745.1.10BalancedBinaryTree..1023.13Anagrams755.1.11FlattenBinaryTreeto3.14SimplifyPath76LinkedList1033.15LengthofLastWord775.1.12PopulatingNextRightPointersineachnodeii105第4章栈和队列7952二叉树的构建10641栈795.2.1ConstructBinaryTree4ValidParentheses79fromPreorderandIn4.1.2LongestvalidParenorderTraversa106theses805.2.2ConstructBinaryTree4.1.3LargestRectangleinfromInorderandposHistogram82torderTraversal1074.1.4Evaluatereversepol-53二叉查找树108ishnotation845.3.1UniqueBinarySearch4.2队列85Trees.1085.3.2UniqueBinarySearch第5章树86Treesli.1105.1二叉树的遍历865.3.3ValidateBinarySearch5.1.1BinaryTreePreorderTreeTraversal865.3.4ConvertSortedarrayto5.1.2BinaryTreeInorderBinarySearchTree...112Traversal885.3.5ConvertSortedListto5.1.3BinaryTreePostorderBinarySearchTree113Traversal9054二叉树的递归.1145.1.4BinaryTreeLevelOr5.4.1MinimumDepthofBidertraversal)2narylree115目录5.4.2MaximumDepthofBi8.3.,2重新实现nextpermunaryTree116tation1425.4.3PathSum11783.3递归.1435.44PathSumil1188.4PermutationsII1445.4.5BinaryTreeMaximum8.4.1nextpermutation...144PathSuum11984.2重新实现nextpermu5.4.6PopulatingNextRighttation144Pointersineachnode120843递归1445.4.7SumRoottoLeafnum8.5Combinations146bers2185.1递归1468.5.2迭代147第6章排序1238.6LetterCombinationsofaphone6.1MergeSortedArray123umber1476.2MergeTwoSortedLists12486.1递归1486.3MergekSortedLists124862迭代96.4InsertionSortList125第9章广度优先搜索1506.5Sortlist1269.1WordLadder1506.6FirstMissingPositive1279.2WordLadderil1546.7SortColors1289.3Surroundedregions162第7章查找94小结16413194.l适用场景1647.1Searchforarange131942思考的步骤7.2SearchInsertPosition.13294.3代码模板1657.3Searcha2DMatrix133第10章深度优先搜索173第8章暴力枚举法13510.1PalindromePartitioning1738.1Subsets13510.2UniquePaths1768.1.1递归1350.2.1深搜1768.1.2迭代.1371022备忘录法.1768.2Subsetsil13810.23动规177821递归13810.24数学公式1788.2.2迭代.14110.3UniquePathsIl1798.3Permutations14210.3.1备忘录法1798.3.1nextpermutation14210.3.2动规.180目录10.4N-Queens1813.4Maximalrectangle21310.5N-QueensII18413.5BestTimetoBuyandSellStock10.6Restoreipaddresses186.21410.7CombinationSum18813.6InterleavingString21510.8CombinationSumIl18913.7ScrambleString21710.9GenerateParentheses.19013.8MinimumPathSum.22210.10Sudokusolver19213.9EditDistance22410.11WordSearch.19313.10DecodeWays.22610.12小结19513.11Distinctsub22710.12.1适用场景19513.12WordBreak22810.122思考的步骤1951313WordBreakil2300.12.3代码模板197第14章图23210.12.4深搜与回溯法的区別.19714.1CloneGraph23210.12.5深搜与递归的区别..197第15章细节实现题235第11章分治法19915.1ReverseInteger2351.1Pow(x,n)19915.2PalindromeNumber.23611.2Sqrt(x)20015.3InsertInterval237第12章贪心法20115.4MergeIntervals23812.1Jumpgame20115.5MinimumWindowSubstring23912.2JumpgameII15.6MultiplyStrings24112.3BestTimetobuyandSellstock20415.7SubstringwithConcatenation12.4BestTimetobuyandsellstockl205ofallwords24412.5LongestSubstringWithoutre15.8Pascal,sTriangle245peatingCharacters20615.9PascalsTriangleIl24612.6ContainerwithMostWater..20715.10SpiralMatrix24715.11SpiralmatrixII248第13章动态规划20915.12ZigZagConversion25013.1Triangle20915.13DivideTwoIntegers25113.2MaximumSubarray15.14TextJustification25313.3PalindromePartitioningII1215.15MaxPointsonaline255目录第1章编程技巧在判断两个浮点数a和b是否相等时,不要用a==b,应该判断二者之差的绝对值fabs(a-b)是否小于某个阈值,例如1e-9。
判断一个整数是否是为奇数,用x%2!=0,不要用x%2=1,因为ⅹ可能是负用char的值作为数组下标(例如,统计字符串中每个字符岀现的次数),要考虑到char可能是负数。
有的人考虑到了,先强制转型为unsignedint再用作下标,这仍然是错的。
正确的做法是,先强制转型为unsignedchar,再用作下标。
这涉及C十整型提升的规则,就不详述了。
以下是关于STL使用技巧的,很多条款来自《EffectiveSTL》这本书。
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章线性表这类题目考察线性表的操作,例如,数组,单链表,双向链表等。
2数组2.1.1RemoveDuplicatesfromSortedarray描述Givenasortedarray,removetheduplicatesinplacesuchthateachelementappearonlyonceandreturnthenewlengthDonotallocateextraspaceforanotherarray,youmustdothisinplacewithconstantmemoryForexample,GiveninputarrayA=[1,1,2Yourfunctionshouldreturnlength=2,andaisnow[1,2]分析无代码1/LeetCode,RemoveDuplicatesfromSortedArray//时间复杂度0(n),空间复杂度0(1)classSolutiontublicintremoveDuplicates(vector<int>&nums)tif(numsemptyo)return0;intindex=ofor(inti=1:inumssize:1++iif(nums[index]!nums[i])nums[++index]=nums[i]returnindex12.1数组代码2//LeetCode,RemoveDuplicatesfromSortedArray/使用STL,时间复杂度0(n),空间复杂度0(1)classSolutionipublicintremoveDuplicates(vector<int>&nums)treturndistance(numsbegin(),unique(numsbegin(),numsend())代码3/LeetCode,RemoveDuplicatesfromSortedArray/使用STL,时间复杂度0(n),空间复杂度0(1)lassSolutionfublicintremoveDuplicates(vector<int>&nums)treturndistance(numsbegin(,removeDuplicates(numsbegin(,numsend(),numsbegintemplate<typenameInIt,typenameoutit>OutItremoveDuplicates(InItfirst,InItlast,OutItoutput)thile(firstlast)i*output++=*firstfirstupper_bound(first,last,*firstreturnoutput相关题目RemoveDuplicatesfromSortedArrayI,见§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(vector<int>&nums)tif(numssize(<=2)returnnumssizeintindex=2for(inti=2:inumssize(:i++)ff(nums[i]!numslindex-2]nums[index++]=nums[i]returnindex;代码2下面是一个更简洁的版本。
上面的代码略长,不过扩展性好一些,例如将occur<2改为occur3,就变成了允许重复最多3次。
//LeetCode,RemoveDuplicatesfromSortedArrayII7/@author虞航仲(http://weibo.com/u/1666779725)//时间复杂度0(n),空间复杂度0(1)lassSolutionfpublicintremoveDuplicates(vector<int>&nums)tconstintn=numssizeintindex=0:for(inti=0:i<n;++i)if(i>0&&i<n-1&nums[i]=nums[i-1]&nums[i]=nums[i1])continue;nums[index++]=nums[i]returnindex;相关题目RemoveDuplicatesfromSortedArray,见§2.1.1
2019/5/20 21:34:34 866KB why
1
FP7209是一颗非同步升压LED驱动IC,控制外部开关NMOS,输入低启动电压2.8V,工作电压5V,VFB反馈电压0.25V,反馈电压低,取样电阻功率损耗也降低,整体转换效率提升。
软启动时间透过外部电容调整,LED开路保护透过外部电阻调整,LED短路保护透过SC控制NMOS;
调光控制DIMPin,DIM内部有滤波器,可以实现线性与數位调光;
输入透过分压电阻接到ENpin,可以控制FP7209启动与关闭电压準位;
有过电流保护,避免开关NMOS电流过大形成损坏;
内置过热保护功能。
方案功能及特点启动电压2.8V工作电压範围5V~24VVFB反馈电压0.25V线性与数位调光控制关机耗电流最大6μA固定工作频率150kHz/SOP-8L(EP)可调工作频率100kHz~1000kHz/TSSOP-14L(EP)可调软启动时间/TSSOP-14L(EP)可调输入低电压保护(UVP)/TSSOP-14L(EP)LED开路保护(OVP)LED短路保护(SCP)/TSSOP-14L(EP)
2016/8/22 22:31:45 975KB 摄影灯调光芯片
1
此书第12章和第14章的光盘文档及源文件
2016/8/26 19:10:07 602KB Xilinx FPGA system generator
1
业界公认功能最强悍的MySQL图形化操作界面管理工具。
体积小却五脏俱全,不管是数据备份还原,远程操作MySQL数据库,高效快速的运行效率,无人能敌!各种智能化的数据迁移、数据同步、通知服务、自动完成功能一应俱全。
本汉化版提取自最新企业版,拥有完全功能组建,完美处理其他MySQL图形工具的中文乱码问题!!MySQL图形操作必备工具。
有朋友反映说诺顿等杀毒软件可能会误报,这是由于在绿化汉化过程中,使用了微压缩加壳,以及一些加快软件响应的相关机制。
2020/10/27 18:23:33 3.44MB MySQL 图形界面 绿色 汉化
1
计算机网络教材,经典黑书,机械工业出版社,适用于计算机科学、软件工程等领域。
本书是计算机网络教材之一,采用了作者的自顶向下方法来讲授计算机网络的原理及其协议,自16年前1版出版以来已经被数百所大学和学院选作教材,被译为14种语言。
第7版保持了以前版本的特色,继续关注因特网和计算机网络的现代处理方式,注重原理和实践,为计算机网络教学提供了一种新颖和与时俱进的方法。
同时,第7版进行了相当多的修订和更新,改变了各章的组织结构,将网络层分成两章(第4章关注网络层的“数据平面”,第5章关注网络层的“控制平面”),并将网络管理主题放入了新的第5章中。
此外,为了反映自第6版以来计算机网络领域的新变化,对其他章节也进行了更新,删除了FTP和分布式散列表的材料,用流行的因特网显式拥塞通告(ECN)材料代替了ATM网络的材料,更新了有关802.11(所谓WiFi)网络和蜂窝网络(包括4G和LTE)的材料,全面修订并添加了新的课后习题,等等。
前言第1章 计算机网络和因特网1 1.1 什么是因特网1  1.1.1 具体构成描述1  1.1.2 服务描述4  1.1.3 什么是协议5
2017/9/3 23:39:19 119.11MB
1
读者调用案例的时候,只要把案例中的数据换成自己需要处理的数据,即可实现自己想要的网络。
如果在实现过程中有任何疑问,可以随时在MATLAB中文论坛与作者交流,作者每天在线,有问必答。
该书共有30个MATLAB神经网络的案例(含可运行程序),包括BP、RBF、SVM、SOM、Hopfield、LVQ、Elman、小波等神经网络;还包含PSO(粒子群)、灰色神经网络、模糊网络、概率神经网络、遗传算法优化等内容。
该书另有31个配套的教学视频帮助读者更深入地了解神经网络。
本书可作为本科毕业设计、研究生项目设计、博士低年级课题设计参考书籍,同时对广大科研人员也有很高的参考价值。
图书目录第1章P神经网络的数据分类--语音特征信号分类第2章BP神经网络的非线性系统建模--非线性函数拟合第3章遗传算法优化BP神经网络--非线性函数拟合第4章神经网络遗传算法函数极值寻优--非线性函数极值寻优第5章基于BP_Adaboost的强分类器设计--公司财务预警建模第6章PID神经元网络解耦控制算法--多变量系统控制第7章RBF网络的回归--非线性函数回归的实现第8章GRNN的数据预测--基于广义回归神经网络的货运量预测第9章离散Hopfield神经网络的联想记忆--数字识别第10章离散Hopfield神经网络的分类--高校科研能力评价第11章连续Hopfield神经网络的优化--旅行商问题优化计算第12章SVM的数据分类预测--意大利葡萄酒种类识别第13章SVM的参数优化--如何更好的提升分类器的功能第14章SVM的回归预测分析--上证指数开盘指数预测第15章SVM的信息粒化时序回归预测--上证指数开盘指数变化趋势和变化空间预测第16章自组织竞争网络在模式分类中的应用--患者癌症发病预测第17章SOM神经网络的数据分类--柴油机故障诊断第18章Elman神经网络的数据预测--电力负荷预测模型研究第19章概率神经网络的分类预测--基于PNN的变压器故障诊断第20章神经网络变量筛选--基于BP的神经网络变量筛选第21章LVQ神经网络的分类--乳腺肿瘤诊断第22章LVQ神经网络的预测--人脸朝向识别第23章小波神经网络的时间序列预测--短时交通流量预测第24章模糊神经网络的预测算法--嘉陵江水质评价第25章广义神经网络的聚类算法--网络入侵聚类第26章粒子群优化算法的寻优算法--非线性函数极值寻优第27章遗传算法优化计算--建模自变量降维第28章基于灰色神经网络的预测算法研究--订单需求预测第29章基于Kohonen网络的聚类算法--网络入侵聚类第30章神经网络GUI的实现--基于GUI的神经网络拟合、模式识别、聚类
2021/6/17 23:08:54 61.64MB matlab
1
收集到四川大学计算机学院计算机网络期末考试题15年到14年期末考试题目,对期末复习很有协助,也可以看看这门挂科率过半的期末考试题
2016/2/22 11:29:52 49.49MB 四川大学 计算机网络 期末考试题
1
本项目是一个基于安卓的象棋项目源码,为联网游戏而设计的。
配有java服务端,不过只能单开。
我没有测试具体的功能,感兴味的可以自己链接数据库试试吧。
下面是运行指南和开发设计文档。
本源码分为客户端和服务端客户端编译即可运行,socket连接为:127.0.0.1:9898运行服务端时,需要使用MySQL建表,建表语句如下:createdatabasechinachess;usechinachess;createtableuser(idintprimarykeyauto_increment,namechar(10)uniquenotnull,passwordchar(16)notnull,headintdefault0,scoreintdefault0,victory_countintdefault0,defeat_countintdefault0,draw_countintdefault0,join_timedatetime)charsetutf8collateutf8_general_ci;服务端DbUtil.java里面有连接数据库的配置简单的设计文档:1.图片收集①背景图片②棋子图片③按钮图片2.音乐收集①背景音乐②按钮点击音乐③选子音乐④吃子音乐⑤走棋音乐⑥胜利音乐⑦失败音乐3.界面设计(photoshop画图)①加载界面②菜单界面④匹配界面⑤游戏界面⑥结算界面4.技术点①socket②多线程同步③MySQL连接④游戏逻辑⑤通信数据格式5.软件①Java环境②安卓开发环境(adtbundle)③MySQL5.76.数据处理byte数据头*0:分割--发往服务器*1:登陆*2.注册*3.消息*4:匹配游戏*5:走棋*6:求和*7:同意求和*8:悔棋*9:同意悔棋*10:认输*11:心跳包--发往用户*12:登陆回调*13:注册回调*14:开始游戏*15:游戏数据*16:游戏结束7.游戏规则①车走直线,不能挡车②马走日,前压马腿③象走田,前压象腿,不可越河④士空走斜一,吃走斜一,不可越将营⑤将走直一,(吃将可走直线可越将营),不可越将营⑥炮空走直线,吃走炮台⑦兵可进不可退,走直一8.绝杀(选)定义:无论怎么走,将都会被杀的棋叫做绝杀实现:扫描每个己方棋子的每一步,只要有一步致使不会死帅,就不是绝杀之棋9.智能AI(略)10.流程
2016/9/16 23:47:37 8.27MB 安卓联网 中国象棋
1
Python7天速成
2016/4/4 14:52:44 28.41MB python
1
包括了VisualC++14(2017)-64-bitVisualC++14(2015)-64-bitGCC7.3.0MinGW(SEH)-64-bitLinuxGCC-64-bitMacOSClang-64-bit(OSX10.7+,compatiblewithC++11andlibc++)
2015/3/14 2:25:02 61.78MB SFML
1
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡