LeetCode cpp最新中文题解.pdf
LeetCode cpp最新中文题解.pdfLeetCode cpp最新中文题解.pdfLeetCode cpp最新中文题解.pdf目录3.4 Add binary615.1.5 Binary Tree Level Or-3.5 Longest Palindromic Substring. 62der traversal il3.6 Regular Expression Matching665.1.6 Binary Tree Zigzag3.7 Wildcard Matching67Level Order traversal. 963.8 Longest Common Prefix5.1.7 Recover Binary Search3. 9 Valid Number70Tree983.10 Integer to roman725. 1. 8 Same Tree3. 11 Roman to Integer735.1.9 Symmetric Tree1003.12 Count and Say745.1.10 Balanced Binary Tree.. 1023. 13 Anagrams755.1.11 Flatten Binary Tree to3. 14 Simplify Path76Linked List1033. 15 Length of Last Word775.1. 12 Populating Next RightPointers in each node ii 105第4章栈和队列7952二叉树的构建10641栈795.2.1 Construct Binary Tree4Valid Parentheses79from Preorder and In4.1.2 Longest valid Parenorder Traversa106theses805.2.2 Construct Binary Tree4.1.3 Largest Rectangle infrom Inorder and posHistogram82torder Traversal1074.1.4 Evaluate reverse pol-53二叉查找树108ish notation845.3. 1 Unique Binary Search4.2队列85Trees.1085.3.2 Unique Binary Search第5章树86Trees li.1105.1二叉树的遍历865.3.3 Validate Binary Search5.1.1 Binary Tree PreorderTreeTraversal865.3. 4 Convert Sorted array to5.1.2 Binary Tree InorderBinary Search Tree...112Traversal885.3.5 Convert Sorted List to5.1. 3 Binary Tree PostorderBinary Search Tree113Traversal9054二叉树的递归.1145. 1. 4 Binary Tree Level Or5.4.1 Minimum Depth of Bider traversal)2nary lree115目录5.4.2 Maximum Depth of Bi8.3.,2重新实现 next permunary Tree116tation1425.4.3 Path Sum11783.3递归.1435.4 4 Path Sum il118 8.4 Permutations II1445.4.5 Binary Tree Maximum8.4.1 next permutation... 144Path Suum11984.2重新实现 next permu5.4.6 Populating Next Righttation144Pointers in each node 120843递归1445.4.7 Sum Root to Leaf num8.5 Combinations146bers2185.1递归1468.5.2迭代147第6章排序1238.6 Letter Combinations of a phone6.1 Merge Sorted Array123umber1476.2 Merge Two Sorted Lists12486.1递归1486.3 Merge k Sorted Lists124862迭代96.4 Insertion Sort List125第9章广度优先搜索1506.5 Sort list1269.1 Word Ladder1506.6 First Missing Positive1279.2 Word Ladder il1546.7 Sort Colors1289.3 Surrounded regions162第7章查找94小结16413194.l适用场景1647.1 Search for a range131942思考的步骤7.2 Search Insert Position.13294.3代码模板1657. 3 Search a 2D Matrix133第10章深度优先搜索173第8章暴力枚举法13510.1 Palindrome Partitioning1738.1 Subsets13510.2 Unique Paths1768.1.1递归1350.2.1深搜1768.1.2迭代.1371022备忘录法.1768.2 Subsets il13810.23动规177821递归13810.24数学公式1788.2.2迭代.14110.3 Unique Paths Il1798. 3 Permutations14210.3.1备忘录法1798.3.1 next permutation14210.3.2动规.180目录10.4 N-Queens1813.4 Maximal rectangle21310.5 N-Queens II18413.5 Best Time to Buy and Sell Stock10.6 Restore ip addresses186.21410.7 Combination Sum18813.6 Interleaving String21510.8 Combination Sum Il18913.7 Scramble String21710.9 Generate Parentheses.19013. 8 Minimum Path Sum.22210.10 Sudoku solver19213.9 Edit Distance22410.11 Word Search.19313. 10 Decode Ways.22610.12小结19513. 11 Distinct sub22710.12.1适用场景19513. 12 Word Break22810.122思考的步骤19513 13 Word Break il2300.12.3代码模板197第14章图23210.12.4深搜与回溯法的区別.19714. 1 Clone Graph23210.12.5深搜与递归的区别..197第15章细节实现题235第11章分治法19915.1 Reverse Integer2351.1 Pow(x, n)19915.2 Palindrome Number.23611. 2 Sqrt(x)20015.3 Insert Interval237第12章贪心法20115.4 Merge Intervals23812.1 Jump game20115.5 Minimum Window Substring23912.2 Jump game II15.6 Multiply Strings24112. 3 Best Time to buy and Sell stock 20415.7 Substring with Concatenation12. 4 Best Time to buy and sell stock l205of all words24412. 5 Longest Substring Without re15.8 Pascal,s Triangle245peating Characters20615.9 Pascals Triangle Il24612.6 Container with Most Water.. 207 15.10 Spiral Matrix24715.11 Spiral matrix II248第13章动态规划20915.12 ZigZag Conversion25013. 1 Triangle20915.13 Divide Two Integers25113.2 Maximum Subarray15. 14 Text Justification25313.3 Palindrome Partitioning II1215.15 Max Points on a line255目录第1章编程技巧在判断两个浮点数a和b是否相等时,不要用a==b,应该判断二者之差的绝对值fabs(a-b)是否小于某个阈值,例如1e-9。判断一个整数是否是为奇数,用x%2!=0,不要用x%2=1,因为ⅹ可能是负用char的值作为数组下标(例如,统计字符串中每个字符岀现的次数),要考虑到char可能是负数。有的人考虑到了,先强制转型为 unsigned int再用作下标,这仍然是错的。正确的做法是,先强制转型为 unsigned char,再用作下标。这涉及C十整型提升的规则,就不详述了。以下是关于STL使用技巧的,很多条款来自《 Effective STL》这本书。vector和 string优先于动态分配的数组首先,在性能上,由于 vector能够保证连续内存,因此一旦分配了后,它的性能跟原始数组相当;其次,如果用new,意味着你要确保后面进行孓 delete,一旦忘记了,就会出现BUG,且这样需要都写一行 delete,代码不够短再次,声明多维数组的话,只能一个一个new,例如int** ary = new int*[row_num];for(int i=0: i< row num; ++1)ary [i] new int [col_num]用 vector的话一行代码搞定vectorary(row_num, vector(col_num, 0))使用 reserve来避免不必要的重新分配第2章线性表这类题目考察线性表的操作,例如,数组,单链表,双向链表等。2数组2.1.1 Remove Duplicates from Sorted array描述Given a sorted array, remove the duplicates in place such that each element appear only onceand return the new lengthDo not allocate extra space for another array, you must do this in place with constant memoryFor example, Given input array A =[1, 1, 2Your function should return length =2, and a is now [1, 2]分析无代码1/ LeetCode, Remove Duplicates from Sorted Array//时间复杂度0(n),空间复杂度0(1)class Solution tublicint removeDuplicates(vector& nums)tif (nums empty o) return 0;int index =ofor (int i =1: i nums size: 1++ iif (nums [index] ! nums [i])nums [++index]= nums [i]return index 12.1数组代码2//LeetCode, Remove Duplicates from Sorted Array/使用STL,时间复杂度0(n),空间复杂度0(1)class Solution ipublicint removeDuplicates(vector& nums)treturn distance(nums begin(), unique(nums begin(), nums end ())代码3/ LeetCode, Remove Duplicates from Sorted Array/使用STL,时间复杂度0(n),空间复杂度0(1)lass Solution fublicint removeDuplicates(vector& nums)treturn distance(nums begin(, removeDuplicates(nums begin(, nums end(), nums begintemplateOutIt removeDuplicates(InIt first, InIt last, OutIt output)thile (first last)i*output++ = *firstfirst upper_bound(first, last, *firstreturn output相关题目Remove Duplicates from Sorted Array I,见§2.1.22.1.2 Remove Duplicates from Sorted Array II描述Follow up for"Remove Duplicates " What if duplicates are allowed at most twice?For example, Given sorted array a =[1, 1, 1, 2, 2, 3]Your function should return length=5, and A is now [1, 1, 2, 2, 3分析加一个变量记录一下元素出现的次数即可。这题因为是已经排序的数组,所以一个变量即可解决。如果是没有排序的数组,则需要引入一个 hashmap来记录出现次数。4第2章线性表代码1// Leet Code, Remove Duplicates from Sorted Array II//时间复杂度0(n),空间复杂度0(1)//qauthorhex108(https://github.com/hex108)class Solution tublicint removeDuplicates(vector& nums)tif (nums size(
- 2020-12-04下载
- 积分:1
STM32F4xx中文参考手册
stm32f4xx系列开发指南。新手朋友和嵌入式开发者必备资料。RM0090目录353擦除∴....653.54编程....,,,,.,,,..66355中断663.6选项字节673.6.1关于用户选项字节的说明3.62用户选项字节编程363读保护(RDP).70364写保扩.,723.7次性可编程字节.7238 Flash接||寄存器,,7338.1Fash访问控制寄存器( FLASH ACR)382Fash密钥寄存器( FLASH KEYE)74383Fash选项密钥寄存器( FLASH_ OPTKEYR)743.84Fash状态寄存器( FLASH SR)75385用于STM32F405XX/07xX和STM32F415X/17XX的Flash控制寄存器( FLASH CR)...7638.6用于STM32F42XX和STM32F43XXX的Flash控制寄存器( FLASH_CR)77387Fash选项控制寄存器( FLASH_PTc388用于STM32F42XXX和STM32F43XXxFlash选项控制寄存器( FLASH OPTCR1)80389Fash接口寄存器映射,,,,,81cRC计算单元■■■■■■■■■■■■■■■■■■■■■,,,834.1cRC简介834.2CRC主要特性.■1■1834.3CRC功能说明.,834.4CRC寄有器.8444.1数据寄存器(CRC_DR)....84442独立数据寄存器(CRG_DR)8444.3控制寄存器( CRC CR)85444CRC奇存器映射855电源控制器PWR).865.1电源,,,,,865.1.1独立AD转换器电源和参考电压5.1.2电池备份域翻着潘875.1.3调压器89文档ID018909第4版3/1284目录RM009052电源监控器1■■90521上电复位(POR/掉电复位(PDR)90522压复位(BOR05.23可编程电压检测器(PVD)9153低功耗模式925.3.1降低系统时钟速度93532外设时钟门控,935.3.3睡眠模式.,,,,945.34停止模式翻D95535待机模式翻965.3.6对RTC复用功能进行编程以从停止模式和待机模式唤醒器件985.4电源搾制寄存器..,,,100541用于STM32F405XX/07XX和STM32F415X×/17XX的PWR电源搾制寄存器(PWR_CR).100542用于STM32F42xX和STM32F43XXX的PWR电源控制寄存器(PWR_CR).101543PWR电源控制/状态寄存器(PWR_CSR).,,.10355PWR寄存器映射104复位和时钟控制(Rcc)1056.1复位056.1.1系统复位1056.1.2电源复位1056.13备份域复位10662时钟10662.1HSE时钟108622HS|时钟,,.109623PLL配置110624LSE时钟11062.5LS|时钟111626系统时钟( SYSCLK)选择11627时钟安全系统(CSS)111628RTC/AWU时钟629看门狗时钟11262.10时钟输出功能11262.11某于TM5TM11的内部/外部时钟测量,,,,.,,.,1134/1284文档I018909第4版RM0090目录63RCC寄有器114631RCC时钟控制寄存器( RCC CR)114632 RCC PLL配置寄存器(RCC_ PLLCFGR),.,,,,116633RCC时钟配置寄存器( RCC CFGR)118634Rcc时钟中断寄存器(RCC_C|R),,,,,,120635 RCC AHB1外设复位寄存器( RCC AHB1RSTR.123636 RCC AHB2外设复位寄存器( RCC AHB2RSTR)...125637 RCC AHB3外设复位寄存器(RGC_AHB3RSTR)125638用于STM32F405X×/07XX和STM32F415X×/17XX的RCC APB1外设复位寄存器( RCC APB1RSTR126639用于STM32F42XXX和STM32F43XXXRCC APB1外设复位寄存器( RCC APB1RSTR).12963.10用于STM32F405XX/07XX和STM32F415X×/17Xx的RCC APB2外设复位寄存器(RcG_APB2RSTR...13263.11用于STM32F42XXX和STM32F43XXxRCC APB2外设复位寄存器(RCC_APB2RSTR)..1336312 RCC AHB1外设时钟使能寄存器( RCC AHB1ENR)13563.13 RCC AHB2外设时钟使能寄存器(RCC_AHB2ENR)..1376314 RCC AHB3外设时钟使能寄存器(RCC_AHB3ENR),,.13863.15用于STM32F405XX/07xX和STM32F415X×/17xx的RCC APB1外设时钟使能寄存器( RCC APB1ENR)1363.16用于STM32F42XXX和STM32F43XXx的RCC APB1外设时钟使能寄存器( RCC APB1ENR),.,,14163.17用于STM32F405XX/07XX和STM32F415X/17XX的RCC APB:2外设时钟使能寄存器(RCC_APB2ENR).1446318用于STM32F42Xx和STM32F43Xxx的RCC APB2外设时钟使能寄存器(RCC_APB2ENR)1466.3.19用于STM32F405XX/07xX和STM32F415X×/17xx的低功耗模式寄存器中的 RCC AHB1外设时钟使能(RCC_AHB1 LPENR)14863.20用于STM32F42XXX和STM32F43XxX的低功耗模式寄存器中的RCC AHB1外设时钟使能(RCC_ AHB1LPENR)..,,.1516.321用于低功耗模式寄存器中的 RCC AHB2外设时钟使能(RCC_ AHB2LPENR)1546.322低功耗模式寄存器中的 RCC AHB3外设时钟使能(RCC_ AHB3LPENR).15563.23用于STM32F405X/07XX和STM32F415X×/17xx的低功耗模式寄存器中的 RCC APB1外设时钟使能(RcC_APB1 LPENR).1556324用于STM32F42XX和STM32F43XXX的低功耗模式寄存器中的RCC APB1外设时钟使能(RCC_ APB1LPENR)1586.3.25用于STM32F405X/07XX和STM32F415X×/17XX的低功耗模式寄存器中的 RCC APB2外设时钟使能(RcC_APB2 LPENR)16文档ID018909第4版5/1284目录RM00906.3.26用于STM32F42XXX和STM32F43xX的低功耗模式寄存器中的RCC APB2外设时钟(RcC_APB2 , LPENR),,,,,,,1636.327RCC备份域控制寄存器( RCC BDCP).1656328RCC时钟控制和状态寄存器(RcC_cSR.,.,1666.329RCC扩频时钟生成寄存器(RCC_ SSCGR),,,,.,,1686330 RCC PLL2S配置寄存器(RCC_PL凵|2 SCFGR).696331RCC专用时钟配置寄存器(RGC_ DCKCFGR)1706332RGC寄存器映射171通用Mo(GP|o)17571GP|O简介,,,1757.2GPO主要特性1757.3GPO功能描述1757.3.1通用MO(GP|O1777.32|O引脚复用器和映射..,1777.3.3WO端口控制寄存器181734MO端口数据寄存器18173.5MO数据位操作.1817.3.6GPO锁定机制7.3.7|O复用功能输入/输出182738外部中断线/唤醒线1827.3.9输入配置..,,...1827.3.10输岀配置.......1837.3.11复用功能配置:::1837.3.12模拟配置1847313将OSC32NOSC32_OUT引脚用作 GPIO PC14/PC15端凵引脚1857.3.14将OSC|N/OSC_OUT引脚用作 GPIO PHO/PH1端口引脚18573.15选择RTC_AF1和 RTC AF2复用功能18574GP|O寄存器,.18774.1GPO端口模式寄存器( GPIOX MODER)(x=A.D)187742GP|O端口输出癸型寄存器( GPIOX OTYPER)(x=A.D...187743GPO端口输出速度寄存器( G PIOX OSPEEDR)(x=A.J)188744GPo端口上拉/下拉寄存器(GP|Oⅹ_ PUPDR)(X=A.O.18874.5GP|o端口输入数据寄存器(GPOX|DR)(x=A.)1897.4.6GP|o端口输出薮据寄存器(GP| Ox ODR)(X=A.)..18974.7GPO端口置位/复位寄存器(GP| OX BSRR)(X=A.).,,.19074.8GPO端口酤置锁定寄存器(GP| Ox LCKF)(x=A.).,.1906/1284文档I018909第4版RM0090目录7.4.9GP|O复用功能低位寄存器(GP|OⅹAFRL)(x=A.)19174.10GPO复用功能高位寄存器(GP| Ox AFRH)(X=A.)1927.4.11GPO寄存器映射192系统配置控制器( SYSCFG)1948.11O补偿单元19482 SYSCFG寄存器.194821 SYSCFG存储器重映射寄存器( SYSCFG MEMRMP)194822用于STM32F405X×/07xx和STM32F415X×17xx的SYSCFG外设模式配置寄存器( SYSCFG_PMC)195823用于STM32F42XxX和STM32F43XXx的 SYSCFG外设模式配置寄存器( SYSCFG_PMC).....195824 SYSCFG外部中断配置寄存器1( SYSCFG_ EXTICR1)...1968.25 SYSCFG外部中断配置寄存器2( SYSCFG_ EXTICR2)...196826 SYSCFG外部巾断配置寄存器3( SYSCFG_ EXTICR3)...197827 SYSCFG外部中断配置寄存器4( SYSCFG_ EXTICR4)..198828补偿单元控制寄存器( SYSCFG_ CMPCR),,198829 SYSCFG寄存器映射199DMA控制器(DMA20191DMA简介..20192DMA主要特性,20193DMA功能说明..2029.3.1般说明202932DMA事务204933通道选择.205934仲裁器206935DMA数据流2069.3.6源、日标和传输模式.2069.3.7指针递增210938循环模式210939双缓冲区模式293.10可编程数据宽度、封装/解封、字节序21293.11单次传输和突发传输2139.3.12FFO,21493.13DMA传输完成21693.14DMA传输暂停217文档ID018909第4版7/1284目录RM00909.3.15流控制器9.3.16可能的DMA配置汇总..2189.3.17流置过程...21893.18错误管理21994DMA中断,,,,,,2209.5DMA寄存器22095.1DMA低中断状态寄存器(DMA_LSR.220952DMA高中断状态寄存器(DMAH|SR)221953DMA低屮断标志清零寄存器( DMA LIFCE).222954DMA高屮断标志清零寄存器( DMA HIFCE)223955DMA数据流ⅹ配置寄存器(DMA_SXCR)(X=0.7)....2239.5.6DMA数据流ⅹ数据项效寄存器( DMA SXNDTR)(X=0.7).,226957DMA数据流X外设地址寄存器( DMA SXPAR)(x=0.7)227958DMA数据沇存储器0地址寄存器( DMA SXM0AR)(x=0.7).…2279.59DMA数据流ⅹ存储器1地址寄存器( DMA SXM1AR)(X=0.7)2289.5.10DMA数据流ⅹFIFO控制寄存器( DMA SXFCR)(x=0.7)22895.11DMA寄存器映射10中断和事件.23310.1联套向量中断控制器(NVC)..…...23310.1.1NV|C特性.23310.12 Sys Tick校准值寄存器23310.1.3中断和异常向量233102外部中断/事件控制器(EXTI233102.1EXT主要特性..24010.22EXT框图2410.2.3唤醒事件管理,,,,,24110.24功能说明24110.25外部中断/事件线映射243103EXT寄存器.D面重,24410.3.1中断屏蔽寄存器( EXTI IME)24410.32事件屏蔽寄存器( EXTI EMF)24410.33上升沿触发选择寄仔器( EXTI RTSR)245034下降沿触发选择寄存器( EXTI FTSE).24510.3.5软件中断事件寄存器( EXTI SWIER)24610.36起寄存器( EXTI PR)246037EXT寄存器映射2478/1284文档I018909第4版RM0090目录模数转换器(ADc)■■■24811.1ADC简介1面■■■口■■248112ADC主要特性.24811.3ADC功能说明,,,24811.3.1ADC开关控制...25011.32ADC时钟25011.3.3通道选择..25011.3.4单次转换模式.......25111.3.5连续转换模式.25111.36时序图.25211.37模拟看门狗11.38扫描模式25311.3.9注入通道管理25311.3.10不连续采样模式254114数据对齐...25511.5可独立设置各通道采样时间...,25611.6外部触发转换和触发极性..25611.7快速转换模式,,,,,,,25811.8数据管坦25811.8.1使用DMA.25811.82在不使用DMA的情况下管理转换序列25911.8.3在不使用DMA和溢出检测的情况下进行转换11.9多重ADC模式25911.9.1注入同时模式26211.92规则同时模式26311.9.3交替模式2641194交替触发模式266119.5混合型规则/注入同时模式26811.9.6规则同时+交替触发组合模式2681.10温度传感器26911.11电池充电监视.....27111.12ADC中断11.13ADC寄存器27111.131ADC状态寄存器( ADC SR)...27111132ADC控制寄存器1(ADC_cR1)272文档ID018909第4版9/1284目录RM009011.133ADC控制寄存器2(ADC_cR2)..27411.134ADC样时间寄存器1(ADC_SMPR1).,,,,,.27711.13.5ADC采样时间寄存器2(ADC_SMPR2)27711.136ADC注入通道数据偏移寄存器Ⅹ( ADC JOFRX)(X=1.4).2781113.7ADG看门狗高阈值寄存器(ADC_HTR)27811.138ADC看门狗低阈值寄存器(ADC_LTR)27911.139ADC规则序列寄存器1(ADC_SQR1)2791113.10ADC规则序列寄存器2(ADC_SQR2).....28011.1311ADC规则序列寄存器3(ADC_SQR3).11.1312ADC注入序列寄存器( ADC JSQR)11.1313ADC注入数据寄存器ⅹ( ADC DRX)(x=1.4)2811.13.14ADC规则数据寄存器(ADC_DR)..28211.1315ADC通用状态寄存器(ADC_CSR)2821113.16ADC通用控制寄存器(ADC_CCR).,28411.13.17适用于双重和三重模式的ADC通用规则数据寄存器(ADC_CDR).28511.13.18ADC寄存器映射....28612数模转换器(DAC)288121DAC简介288122DAC主要特性88123DAG功能说明..,29012.3.1DAC通道使能29012.3.2DAG输出缓冲器使能290123.3DAC数据格式2901234DAG转换2911235DAC输出电压29212.36DAC触发选择.,.2921237DMA请求.29212.38生成噪声.,,29312.3.9生成三角波29412.4DAC双通道转换,,,294124.1独立触发(不产生波形)2951242独立触发(生成单个LFsR)...295124.3独立触发(生成不同LFsR)295124.4独立触发(生成单个三角波)295124.5独立触发(生成不同三角波)2961246同步软件启动29610/1284文档I018909第4版
- 2020-12-08下载
- 积分:1