From de171f0b53807394c6f9ea497401ec864ae49019 Mon Sep 17 00:00:00 2001 From: CyC2018 Date: Tue, 30 Apr 2019 17:20:23 +0800 Subject: [PATCH] auto commit --- ...50\346\200\201\350\247\204\345\210\222.md" | 19 ++++++++------- ...7 Offer \351\242\230\350\247\243 - 3~9.md" | 5 ++-- .../49d2adc1-b28a-44bf-babb-d44993f4a2e3.gif | Bin 0 -> 37557 bytes docs/pics/_u4E8C_u53C9_u6811_u7684_u4E0B_.gif | Bin 11082 -> 11264 bytes ..._u53C9_u6811_u7684_u4E0B_1548504426508.gif | Bin 11906 -> 12288 bytes docs/pics/_u4E8C_u7EF4_u6570_u7EC4_u4E2D_.gif | Bin 18153 -> 18432 bytes ..._u5C3E_u5230_u5934_u6253_1548293972480.gif | Bin 5438 -> 6144 bytes ..._u5C3E_u5230_u5934_u6253_1548295232667.gif | Bin 16383 -> 16384 bytes ..._u5C3E_u5230_u5934_u6253_1548296249372.gif | Bin 19480 -> 20480 bytes ..._u5C3E_u5230_u5934_u6253_1548503461113.gif | Bin 15224 -> 15360 bytes docs/pics/_u66FF_u6362_u7A7A_u683C.gif | Bin 10750 -> 11264 bytes docs/pics/_u7528_u4E24_u4E2A_u6808_u5B9E_.gif | Bin 19970 -> 20480 bytes .../pics/_u91CD_u5EFA_u4E8C_u53C9_u6811-1.gif | Bin 5974 -> 6144 bytes ...u5EFA_u4E8C_u53C9_u6811-21548502782193.gif | Bin 23403 -> 23552 bytes ...50\346\200\201\350\247\204\345\210\222.md" | 23 +++++++++--------- .../49d2adc1-b28a-44bf-babb-d44993f4a2e3.gif | Bin 0 -> 37557 bytes .../pics/_u4E8C_u53C9_u6811_u7684_u4E0B_.gif | Bin 11082 -> 11264 bytes ..._u53C9_u6811_u7684_u4E0B_1548504426508.gif | Bin 11906 -> 12288 bytes .../pics/_u4E8C_u7EF4_u6570_u7EC4_u4E2D_.gif | Bin 18153 -> 18432 bytes ..._u5C3E_u5230_u5934_u6253_1548293972480.gif | Bin 5438 -> 6144 bytes ..._u5C3E_u5230_u5934_u6253_1548295232667.gif | Bin 16383 -> 16384 bytes ..._u5C3E_u5230_u5934_u6253_1548296249372.gif | Bin 19480 -> 20480 bytes ..._u5C3E_u5230_u5934_u6253_1548503461113.gif | Bin 15224 -> 15360 bytes notes/pics/_u66FF_u6362_u7A7A_u683C.gif | Bin 10750 -> 11264 bytes .../pics/_u7528_u4E24_u4E2A_u6808_u5B9E_.gif | Bin 19970 -> 20480 bytes .../pics/_u91CD_u5EFA_u4E8C_u53C9_u6811-1.gif | Bin 5974 -> 6144 bytes ...u5EFA_u4E8C_u53C9_u6811-21548502782193.gif | Bin 23403 -> 23552 bytes ...7 Offer \351\242\230\350\247\243 - 3~9.md" | 5 ++-- 28 files changed, 28 insertions(+), 24 deletions(-) create mode 100644 docs/pics/49d2adc1-b28a-44bf-babb-d44993f4a2e3.gif create mode 100644 notes/pics/49d2adc1-b28a-44bf-babb-d44993f4a2e3.gif diff --git "a/docs/notes/Leetcode \351\242\230\350\247\243 - \345\212\250\346\200\201\350\247\204\345\210\222.md" "b/docs/notes/Leetcode \351\242\230\350\247\243 - \345\212\250\346\200\201\350\247\204\345\210\222.md" index 8ae2cec6..3fa2cd51 100644 --- "a/docs/notes/Leetcode \351\242\230\350\247\243 - \345\212\250\346\200\201\350\247\204\345\210\222.md" +++ "b/docs/notes/Leetcode \351\242\230\350\247\243 - \345\212\250\346\200\201\350\247\204\345\210\222.md" @@ -59,7 +59,7 @@ -

+

考虑到 dp[i] 只与 dp[i - 1] 和 dp[i - 2] 有关,因此可以只用两个变量来存储 dp[i - 1] 和 dp[i - 2],使得原来的 O(N) 空间复杂度优化为 O(1) 复杂度。 @@ -91,7 +91,8 @@ public int climbStairs(int n) { -

+

+ ```java public int rob(int[] nums) { @@ -145,7 +146,7 @@ private int rob(int[] nums, int first, int last) { -

+

## 母牛生产 @@ -157,7 +158,7 @@ private int rob(int[] nums, int first, int last) { -

+

# 矩阵路径 @@ -203,7 +204,7 @@ public int minPathSum(int[][] grid) { 题目描述:统计从矩阵左上角到右下角的路径总数,每次只能向右或者向下移动。 -

+

```java public int uniquePaths(int m, int n) { @@ -400,7 +401,7 @@ public int numDecodings(String s) { -

+

对于一个长度为 N 的序列,最长递增子序列并不一定会以 SN 为结尾,因此 dp[N] 不是序列的最长递增子序列的长度,需要遍历 dp 数组找出最大值才是所要的结果,max{ dp[i] | 1 <= i <= N} 即为所求。 @@ -567,7 +568,7 @@ public int wiggleMaxLength(int[] nums) { -

+

对于长度为 N 的序列 S1 和长度为 M 的序列 S2,dp[N][M] 就是序列 S1 和序列 S2 的最长公共子序列长度。 @@ -607,7 +608,7 @@ public int lengthOfLCS(int[] nums1, int[] nums2) { -

+

```java public int knapsack(int W, int N, int[] weights, int[] values) { @@ -632,7 +633,7 @@ public int knapsack(int W, int N, int[] weights, int[] values) { -

+

因为 dp[j-w] 表示 dp[i-1][j-w],因此不能先求 dp[i][j-w],以防将 dp[i-1][j-w] 覆盖。也就是说要先计算 dp[i][j] 再计算 dp[i][j-w],在程序实现时需要按倒序来循环求解。 diff --git "a/docs/notes/\345\211\221\346\214\207 Offer \351\242\230\350\247\243 - 3~9.md" "b/docs/notes/\345\211\221\346\214\207 Offer \351\242\230\350\247\243 - 3~9.md" index 1ef7b351..146c483e 100644 --- "a/docs/notes/\345\211\221\346\214\207 Offer \351\242\230\350\247\243 - 3~9.md" +++ "b/docs/notes/\345\211\221\346\214\207 Offer \351\242\230\350\247\243 - 3~9.md" @@ -27,13 +27,14 @@ Output: ## 解题思路 -要求是时间复杂度 O(N),空间复杂度 O(1)。因此不能使用排序的方法,也不能使用额外的标记数组。 +要求时间复杂度 O(N),空间复杂度 O(1)。因此不能使用排序的方法,也不能使用额外的标记数组。 对于这种数组元素在 [0, n-1] 范围内的问题,可以将值为 i 的元素调整到第 i 个位置上进行求解。 以 (2, 3, 1, 0, 2, 5) 为例,遍历到位置 4 时,该位置上的数为 2,但是第 2 个位置上已经有一个 2 的值了,因此可以知道 2 重复: -

+

+ ```java public boolean duplicate(int[] nums, int length, int[] duplication) { diff --git a/docs/pics/49d2adc1-b28a-44bf-babb-d44993f4a2e3.gif b/docs/pics/49d2adc1-b28a-44bf-babb-d44993f4a2e3.gif new file mode 100644 index 0000000000000000000000000000000000000000..e2af5f10d48b03dd2d7b938834f2aaeb1939e815 GIT binary patch literal 37557 zcmeFZcT|(>y6*kH>GaS;H3&+_h=_oQp-NK_1wo2IQ2`NSLsY~B0)!rlh=>@9ND-t< zQ$i6!kARAb8j6UB3KqnM=b4kU_L^s{arQso+Iyez?fnkMa8818po9DRUDtI#&o(<7 zBV*soup;~wg0}zV*|B5CZdcd6o}Rw@5BU2B96Lr02?;rW?mR6#JUTKmJ~l2nAt5z6 z`BHj%W@ctq*43-oIajY2vh!}{7L*he-M(?_PI2YE((0C5)h$(Z&Gn7V_wL?n`SaoY z`LwmQb#-=jcX#*v`Ea{?JGut$-sd%R3^jI)G<7~~?t0wP`>eJ9d0YRB_JJ4o2cP#m z7#kdZHuC7{=#yt-W6$~g@$rcX@G&ttIWhU_#l*~$@wtcNA0JLEK7RG>$?G5g{PA?= z$BWtTpFe;3%g5)H=hLT8A3uJapP&D*^1Oc!eg*%#u&@AL`uyqBmoHxy7Z<;RkH0-j zU%xIbEq(jj^Zn1~$Dhy7pFe;7`7Hn6pWnZK|HF&_{F#+6_`iJ~y!xN{(tpGs_wT>w zzyIpL^Sy)L`0xMTfBpjSZYsZpc3AJ;Wohngt*=Ky!Vm}!f1CT6joJgTn?|(3kPjJ(;vB5t(KECEfZA#v8_xtDB(aZY=2eugZN+Q~p z<5xM|YyS3WX1H|U;Jv#)zRpkfUUzD__v^>fr<->cygAXoA&dr}hLZ8;(;<8Qst94j z86sWKOky^sj9a8ihp@aXNJ~6Y-=xcRHlr=|7oh zRArPeWV|>t8NZ=!ev)N1z(u6kF8ceWIzHvLF@HTAok}+uvVC<)>pk;ThIw%8t5hEs zfkTM2ek)OHd7y$!FEgGB9%AXE90 z0?0xuYcezGDK4OZWOf!7P(?jmdxI?4qnSVre;SaV*Ju<_>@gb~81J-~WKp=Rd7~ll z($#@RtD?Fdu77#)i|)5&CCg7|OS6_sj+9kTWWCL9$;k?;XciUHwy!dLt9iTUX^&1F zPw!b-*^tbUpxnvTfjSihC*GDezK&LSTl->lQ()a-;oEnOU+c7KrNcS9b?Ep4$WZ_qCug9CoGn#IP2#~w2KM~y@QXwfX9zjgO+(QrIZ2Q6zCT}g@rNV? zzwKz1L94)6c56n6Z0d_~CI(BQ3GR|Yp>Z_i?*kHeyff|eaenx6S!o&~W_Ki}VBom? ztu)jDHPo~U$(n6RTQcOT5qg}hH#Uzi*>m&c2xNFyfrOCxM4Lh-9}>b%N+?tBDz1&i z2txUBIqA^G@BZgVf^7)pF4%DGdM5{lxUd+1tGpgN#?x;|Zn%E+*0nAvC@Kf5<;qd3gQ-R)+Y>|5?e(O69WOSn3DhGpE#)V-^^B^@yRUVp{mppwv!D#LuwFUHS4Z_9gno0$)5nhIJsY`kbVEgac=q0K02B{m{*&f;U|IK;Q#D_?q{^LVxY`* z+}@@nz1zBZTE{Qrtve^U9%fHxCuD z6p=A(OXL18a|89t#^t9xsSdtbPae_E57jo@}eK8j4Sn=yiPIx84hP?dVNxgwfWM=?PYU8FPR5R zj5=?K!h|If({gix&^oPlU45n5-Cd2d5_X-!qHkF`F%1tJ7VETK{dvTawWcP4p1S#? zBR&Zft+Y3-gA`?{Ndijq9fTjo?lN4BBlyD)@f6KvhhjkK-SIT=ZBAMxO%4f#m1W31+UE)8jf_k5w5jv z32v`Df9l?gjTO(;=4zho-CqBQS^iQnIK1oX%TMK1u|j8#>A%{n`s2mP7U|_8>M#qpiu%tWmCitp4|}`Q(fA)KMX|QGa>mX|*d;B*kaP>6d zQ5vR*CQ6`7gwpUvbeT~4Au3(oh%Q%8S01J5Rbuv$BGlX?)`muCWJYM!N35~M=qyE$ z2$5Pd5&G_thV>B!p^+x_k%uZG%|au$EJa%2BK`3ZmZ1zICc{27!nmH{Fv{4$WH=L| zED4O=OosKS#Olx}7jBgIOq8Wj6a~jPpuuo+k2cAS(y5H{FN)kh8ckY?rg9@r7{zFX zMu*@cLo;J^ilVh!qr;XWP7|2Aw#?)H%;k0UF--r6xO%4AOpF%HO!AM2WHK-LGcVgR zuMn75xiPFviBzLlwb9tKws9f;aVJNaX+?2KOR*Z_ad}JVB3w-MXml+z`c^%&fypcn zm8j5&yW<|+Y82g$i*E8~cG)uT`b)GJ#onKZ8stVj2#p%Hje1Ck>UEdspJ6_pVLV@A zRE9=$6PS}Tu{MOHC}vWAQPNv((mv;;v$*7t%tW=y#Q3E|duH-JZqmohxc5uw&qfl9 z{;|J{lDGM@eBD{U39QxYS(!zw_e|EIrQ~0@7-2aH(c)Nqcap@nNa-iht74;N1tjFU zV-<>%l-@*YHbiP)iGIyZQIB0t(zT0zPe?szl)7qXYM4=)AvbN~Oq#xb+5wGp3NuYP zH|+)?Z5)@r-ZtH5Cf&C!E}J2t|V1}CZR5M!YQ z8W={DE&c+REk=>zotDW55Xr?E@ALORoXV7Z!%*TIg?mIDe`9uML#CN~ro!<|b$5jH zDTFHFid@YVOAYjz`5kEiS2w$(gF2wdD`-3s65t^%j1pXk4gzds^%El{N|r+?^26?| z+~N$4bmS=a(&puQ^!rcQYW^7l>@1yFh6x|qc4|vNL!>d@a?~!ugJQXgnr%6QG*!E* zwgfZKSy~MY4-SN(Y#I3$d7p{gS8&~)ndRcCOuc}-O-DYxxuzk-5%RF%%<3fBGB`YD=+V&F=K=Qt56)!{ETf(wp=b-t;k)3 zl(A;XRi%VszPHdJ6N#Zfn`njGW{?Vh)uNJp{99Y(qRLEi9A=PxkvW>(d!rra*b{I%X3j{p5FLRuW=nP$?b+WGX+bESf#KznNKaax8teL-#%N0}Tht`tgU2#Nx4(Tz zzH(u2q>r(OR7GX_n@D9Ulw?wffZ#J86=qDN0HxF>{tA``N#Uyui`P;bsF6Gfq}p%iA`P9*pL|E>l+-F}m!0h?-mGyA_KYy) z8L1K(u1Cc8{6JR-6rGW~qVG_KkH5uu8)-%}Ij9iTUVoco9Fb?A?R_;5|2FT~k>VhO zVpT2@6;ipe{*Ls6JFa9n{)um*X5~kddV)ids$sRh|CRn>->lvm3)_mzKO)=Zo3srZ zx&up0W-d`QGmL-KmYlC&9iR2uw|;9Z~0>8m9^YWzpoth(&CzhZ1wQXjw9mFpP zCAtYDNXgxMUw>Ef!QG*yy8{~ce%4WybcNgzvqP zrF&nCTE>l9c5qw7$6FrZIH)Tv!hJ~?VR2kvz2Hxlh)&C#XUo#n*7u&RGqxOuC61VQ z>kFe+`R-O^SnEaGwzX$lWP;i%ac!b1ZG3KP}8m?VLrTrW8{z>Mg*qM&_ znft%gJ8OzMi2xcfr4S~vFHPr`M03U*29bZv3$YV^NVKM`8V=+5JzO`^U!mU;OOnD-KMU4orCsOot83WDm?X56q1Xy#G1y zBSy%Bf{-P_N))6kG#F0DY*tW4^L)diko9bF4+`wb5=UR)eg7%B__WlRk3lY=*RmlL zR70plTgRhiuRRcYC#gPfZAQb_v#tuV(6V%NUCHtT^=m^){gQ9x;6o&QJs+t=gHb8< zBJ*e&`Vfviw7Gvs_nM>!3o_QloAIFgyIj$gIa1IAffTePpNwKdYOJWZHOd$k5<$nT zq1v`eW>84@xQDPZ1qxf^;9mC7+*`7q24nFu z1(~(wL#7;&eY`7nKXzF6i^Sc4euqJVJUBw+Nz~m(1}SJGLmmRgn3NTYQ}FvLAUuBr zJ&wVXAtm+`BeJPl+pyWu-D~?r>gOMz$gB4x!pOUrG5*txqmrx29yuI^t{=rK)1XRk zydVEMr(Y!aIgDt1HU?qDmhlxR-=_%vSc0xa*WG92=g&6KVL|pVX8Z}(oK4%0KSJ3m z%0Xs%<9XNcVX@CC^25l57cZ0~#Ys=G<}WZQXeS+XcKv;&ZG@iJg+EO#kyOy2EQ}CKKk+{Yk#`@|d{ZxL(T3g6;U9 z-uPt^zTh~L}3|@9nA@S-t4de8Q_lZ!#z1O;Q zAsN~(e(OEwd z@6FpMiwF*fBq2lUH%(ckm6^tcNLzLJ^^^5p=9&!~K7Nx-Nl0KTNWD8b6Li3PX#oQPVvyX$OKv++21fKIr zhzI2*eX^t@McJQ)I1qu1P@=+8Bv^t3%g|s|8Z1KmB1l2(*eCUN%@@-_NC>|zsO3{& z^5X7(JQc#Y^3ew=pC#xRA7``+4}+l#9pa<+@xNkrV!Zk2L-QZ0Ec7=oJbmjD{vy&h zc`<$8H~Upz1ylyrX|MztCQy-ytJ;nDuoMxNfe>c2uVWC_m|5vU&%)HT*j%Ix4-#4CL!$FP39RoTzL-@IJhMySS0CohAo%{p zpHL;4&!LM1Q!O(|D#-#OYOMO>?UoFTq<#9%O!0AfF%iX6_4IZ|6b5gy#MN)5V-?la z4CeXK3ZghMvnkGaD?KvOM8lB6QxR^{ky511r?mSE7|CBVi;{Pp-Cg2Z=5s&G^{rdE z_ucRdvzoGfyQ=AxmMMZfGm|rl!T+di;ygfHvWMdP?%9%o(U% zhM}(L%yQ|ZVhwN&6bg+V%n;3tTD{z{K#92AB0>s-ukQU4_^8agCHmLiE@VyZpnk=; z6lo%XdMd1be3Bs`X*M=P3`aN+gbQP|KD*>u$*fvMU3!HHtq~J2m3~Sk!VWUZzMbLI z8OSzgMF12dM_0{Y$ zqOhY89VNUwkdu!i%`CGSk|tCd5kut`B}|*L1W5ua1U zBFfL0B^o(n8m)9OzaCb1aTsnWl2mY`Ah(bacY9+Z627#(rW!kH0 z{ox8*jdo?JHkG~BWv`~=r!y`5Qk zbF5$bpv~rYafI75+!V@qTrMzp6WQ7mtZd7R->P6Pw1NHSl$ zHOk60SJ|hH6Vv{HM^_W7qPC;NPWmH73}`;>B%y>OkujIeXrl?D`q~wV7d9O`kQkKf zw)xESGh&7ax{iNIBwZ(TlM4L7jUTa2RH_Irk^E?Jvumb?qAo!+8==Q>PG{vAZ?31U z7ScOZqb4|TlZ_lX>f_JBy`24=@nS2Y)`ZL)p)7g%^1-6DBZHYM!>Z1R(@TOdBGjV~j;dAQm98)9H~CG$Lv( zuhmDwB^u0ZhaKH*0ygt7Q;MmfPCg*-L`Aa2UtxyeOp7s|gux41uzNjx^%U{`s>KJ% z2cAZtDbsMv6bBhJ!Waf`Hl&EZHKKy!U z7&&wXp+qy^crM_e$(IJFn%Z0;4|b9mO3Rt%MyLO@^0$y~bdEM0$rX$8w_0PeGtO-! zPxijQ&Bn%^Ng)P?F#JdN1p9&7NkmM()|OhrwWkhK4?S_UzrecT_61zrUZwVx2#Ko*fmLk&*H4 zetS?*(18O7_zs?p;uea=F|y2lhXC@&uHo zZfM^jT%pVn5pySw-H_Ii1F?ccwj$K!>Cg|XS}y?gh*e*HQ(ilHng2fE># zH*Y$bn>RK#>aAVd%FZb&DjFXjAFZzX+}jOGhM zI5>Fd(4o!i*PlFj^77@&4<9}}eE9H0Q)6>;^Vj~~vuDpHBqUHMlA9o*okulbf6S`0-51))bHQFKXKy3cJfy6@BZKF0o|(r?%%ps zMJ|^1Pu;8PeFSXrZ{2IO0l#vkdmX{K+yLFHLsj;l-Rp)U(~9;ZQ#;t8dv(>SDcY5{ z?K0?IFC7@Z>3-Cvtf%(K<5G`y`7ic$w{}qJp&MvJV;HGU*FAMT0ogQ>GKC>fMuI5c<-nQ#H z7aD83MoLaM=KL}=bbC~Dau4IEr&{oHj>^aPO8hhP{Pyz-Tgx{acS}3C^^-|mX<`k1 z)t;yHJ_^gCHgqgo?T;YFrC0RUHccyY;zUu5a;!TY*Q)Gz?%`WmWkYVUo@+vZpd#*b z%FFN{m0x2B`5opiYjFisV#I9a83|>!m61x+6AynEX>YI9-O-B5ug6b%64{Z`Y8kk( z*wtn8FSHM{U+<4OyFN8f)0}c9KlV6!0fq3=Np(B7RWBq@YA2CpzdBImikh!X;ZCgN z26qX2FP9xpE=Prv=sgnWrXJq798&qZU2=m?iVfv(o}KJ@O(Ny>wNU%etJyWjZ`!Jd zVoJty!pgUK?T?Z_r{Nb{hf&>s-0g(|qdQbDB4dtxE#@vwaqe4`pT<2Ohd{ z;_R$nu}wpX-*TDqH?0Ge-;J~{<-VADQ$~ImsCqm6+tbw*(XVFZD#HXEG^$Q(Y7?ph zfXL@n(x&9(ERz)kq>v5 zrb|EE`?>h`Lkon}ndhKngXUXt>bK_Ggg4F2x8t|zEObci30k;MIDBiNQ}N8)LKiVc z=Ob6`a?r~Y z%=&qyNQ{aXwF9|sL6>7=59!h6h{9}$Q0OUoM@Tu;*=8cW%iHFiUcJR zv3N@ND#gfSw+ z0`seXd{;+GTJ21pbfJveWBSYI)Ya;Ggt^Sx07o+S>%^a1kZl+u)j}tg)jj0zw#!zSNE{LJOR_9WTwM3py8d|8`}cxcl>! zet-t#iE&9hlnzUeEUmj&IdsW8XnI4Fzk`>3$Hg1<(-T$3w!v-v(MHR=Cq>WW`c}2Q z!z3rhQiW1-h^Szk97MMHu}qPk>Po z>G=HvLXPx&mF73z&a53_Qx5!ZLwn3GhDf5xY?>v3zmsKC5bI=6tbBwGYwte}WfAw2 zobGV=B1F6?N%^A&%*@)$I_7WNCT9NzV)iA+Qngj&i#)cYDSQX9C&!OXO^5Eh+Q`Q6 zRBtRAIis}P{jO^{_=?-lM_vE;PH2sW1ws$;l-IUhAcnTHRo;edRlk#hIzpq%r_)j% zHM&6xcq<_c71T&Z3x7le5C`Hd~`G+VdyvX>QBA`WCgfrWwi+4(+XAr@&O0mT741BeCS>iYHT0EYlJxVpLmYycDl7TN$T0c-;-1SkklRzX2Qa&mHU zaWQ}vfF*#V0Db_1s;sO8>wN%_0DS>2s;#XBTn7LQFyXCRw*b5WXaST3_zEx^z$&my z2iPw=J9~0+5^&K9Ao=FrWNfUcH1=At(^a3w@oTQh4v4-ZF1}`?w`AD z4ZB>R4N@z+ZEe;Y&;GI7_NFUUJR9)UX-WhnT>^I7T!|y)l=c(NS*~EWO{FEzyXle+ z*ll~*cCBed_jwcL)x>k{A-$I^JH8;4vmdM*Z#P1#t_=#UJdhl>>eEr3hL88T8E;$$ zyyP~#zH@c!=0zR(qccM>cKI^r&uyeUEN`kyx+`mVw52Rc_d!w)UJ*6%Js*` zgVv~3ZE)75o7;w}9@84%PAGLpOYrcv-#=F;BbGJftRO9v^xB(YmrK^rA`MX7oJ|1% zzxE2KZ>bTWs@=Eyu(-guZufoR^>sT4gOfq5?LR(*TKkGk+2v)hL^&s!vj%2pX^MMA z+aIlW!3aduOGj#TQzl%bOVq~Wd}EoZF(g6mxSheHdWya440l(&`uMo2yMEl)ah8$v z71dPr94l0s3H(Gg-7}WZma;oeZ6ejf#o89y6=EzQ4dXNqxq8p2bX-xr&+b|i)T#M8 z`_!WVz*p17uXDl{-@Lv~!)VR088U%0xy-dCGkFPyvorZD8?845>285MRaR6)Vf=OKM%>ZT%}qX2iT!ovk z9LM}CMn6KRg1-r(wqrZzH+Sn$aBn1;2m(z4JMT+;>fp02h(=${5ETgEtr8%!=mf6< z2)2a<`(lvN_7#GpP}=$LG&I6d1cq$Ms00#SfRKw=HVoT`*ve|5vn!y}5FM#pfv8CI zV?aE}CJ%y$xCK>7KL}euj)54&;7#U8DJo7;5JiNMbdJEx9yyT;wh%G^k{RW1S#LxU zup`)t1rqNk;>M9ar(iKZg21m_XKRFLD=!9AQGexUW7L4lr#MwlCiiilc_@!S3335NK)~6u|Jk5wGgfm_TG9TaD zV}m3k1QyceA;D26h%|#x#cRP;cu0#(fqX&{rgorE_S%UQ!_!~t4>|kme}+Wwu0dbX z#80Ey$tDkcpep=kU*-Ar^5j_?`IH!J-{;k6#e+6d0tj{DE+W~el$^(+TZTdy35aY_ z8<$eDy`o6CD$g0FnTXj^pgm_{r9=XB&BqEs3e~i2j1wPRqB?N@4j}cUs zISZc~GZCc4Qjx}KYsT3fiE1F26EMfm@vkKW(jnE)GRfN8s=odh~4BevLg#g&QU{376l{L#(QJDjy1t}5|o7V5oF4$ zp?4oUdsFLC#eVgc)yBvf4LT)}`gMKX^AbsWKCKGJxT8#`!6$h4p(Rl$(3A)bdZa4Q zWGc6Y(`EPZ3>0iR?V}q4Ass4jF2cP-Bf%op>8H4R+~WOr54p=IT~EcuBnIT-zF*<< zofL)5HfXK7O5=rd@Y8b)=s1_`p6CI|u^;8r&C1EVw0kA=Pwhww&j=l15*lt?yZ!VU zi2MV!j)98vmuAM@T5`rTUrOH-`bkEaPqVKGA%3p?uz&A7>i6*u;q!HIV)#&Tb>g@P zvY_THI@MX80QdZqVo=bj-HQU!rL04E$t)7yVG$9K+d!EhO zSQRPeKCc@5YU6$$$#_7f65Fw0wszfoT&^#gvNfCvz4wyXgFk=Z+aqzH)#X5(IHWr?} zMORL24cgqg^r3v2&8PD0iZ7&t5M>bCgHU@ z6f(MedKK%~wt=rmr`sPI`$8J4jfZb>E+!jwU|+>yB3_Q?MWDxnYWiMN`KTl#7`v6L z?={iIegd}MzD?;M+HOmeNfuiaQoQ#+*uHp3?({rH(ix}Ax5x7kQ6$*W8JoDl@C(+s zX?U|phxgAt(()|q#==AHGBPMCYWlLA0v~5uVQWgX)$c&cSA^WL+$bG-QC7t`J)bTw z?xVaj!c>KJ4kKCpTD+*;t;ifwWMR(GU@{G-$Ugt+^66>D1!E(WJR|b_E9@#?^lY`1 zS*G|w8cZQX?@}t=+TM5WdTQ2(a257%mt2!dNR~NTWfUsTX}uwy?ghf;!^kf9R{iEA2D}e@ZrFt zrzrb?8(E2-r6nYKN8bSN6cKbJA|~n46%y8B4!+G zp>|rDl6g(uPy0K;J(~!j9U8sqObCO}4U;>8;lK?clG+(uS!h^&+p?Ky*opTOy_vH5 z-s7!(iQUW%@%K#0mN<`m0HCSWSXc5U%gs-xkXsWfLB%~$EW z-2z@+az9l3D#I(}&8y3lXwB(Nzl?zCEB=MW(^)}vZ>FzO|G(Rt@0xIt1S>*h6|3T4 z$w?_kh>XBB#{~)~KCp)_J67=86&r&+T7`VPD##Tc-&xVZWDROi*$sS1V;NNzw}1O_Dthrnb6*$HU>Kx_kM9GKJ~xB}A+lmzk~kmZ1+Y9)gKLmXr_AOR{XD+9q2h+#l_1d#7qCGAJ_kRpZ{O}4XlJre>*^F zIz#+RiN_TB%K=I?TYer0nRJuD0m?PKN|1kjwjGH{OVvC%+id&i0m=Z;db#vh?RlWY z+isH1abaz{zEa|qDCF;d-gA2PVYxtUgpz}s#)B&K{XFm9N3&1r0-yC<^PJcAiaGUZ z7EQT)bnGszYtj41rV8I%kq>0d`j!GFs^S$K^uA{XO?79UcT+xZTzxp>YHP@{*OH7;!(~Nqh-4_fTs_9YiOX() zB=k{B#Qk?S9Z4H*Used?g+-kHgb1X%Y2Ld_#t7Z&y~Dqz?ez71cki)agueC9rPe#w z(WM@Xt7zZe-GqH5R0x!?esM0*Ms)4yn8=w#xADV>3}-&$_R-N7f(RXr%h9XPVOoV$ z`yO)QHUHn6!vAF<)0~`@v@?ku)L=1Xjz#G7Rg{UTP^~cicBTtn;!HNDYgIg+o(&Uu zGzo+=C8zVe5{q^k!m&88T9Xb9Wlg}ZkMnBy*^b4cjv^5!5$hwdI4Smq-g6B>WVrQt z@#g`Rp;rbYruoJjhtD=BTA~G~Xq?WI!QQnG*LkX&$Ga$SWS^+pK&==onTkNGQ7MOa zL!L-OahxTN2455Va#z+`8p5|_5C%v9l~; zybU2#LpI2k(EPRd6A^`UR(}PI@ zh#7D>kRGta0W<<^NvtRi;C>)0V6y;hLx3s($OMoBu&)6`2P{?qSpftLz!z{WfOVip z8DZxEy93z*;0^=`>`H(|4*=pTZARS56MwWH)>c3`z%~b{EWq*ta2G(!!2SYg5<2p7 z0qBDY0+bs=x68ok{-C`cVAtc^K|f$Bfa?GS0?;YYB!G2~80xX(KHfm!fCq53u>p%1 zkE<)&a<7BcjFM^&=w3iq0}25kUPnCKLFWJ@4D=_j?lm`cK62i~?@`s<+i)ebC?Rehc!RL8l?{%r!UA9_fbs%;1TF$Nhm{Hi7@@sh-f!AC zV6g?52VlBxr?9|I%FXyVu-pMG1W?Z>HC3_6nXftbcx9!)ApJMo?D&@}-5)9gaVv0b zu&mashWOu(=_e4_`)OJ<94a)ExQ&h!l2OzkuWs!C$Mg+r2vFBmSbmfK7(W+ULqed4 zzNg5EJ=e*5+~&+1o2iUX);En>#xy&thOdZUDDF7>#%1iwpMtSccj(gucn z4ahJ0D)L}Re$9K$lul>*dOM?Ii*u**XebL&FWxQrD!+J%lZR+7koD1LOjR@M-Q?uV zm$YM(7?wXQ&~oC728J=c3@L!WaYlp%OlTUe8g zTt0hAXH&`HBHR1ml7LI(XBU<#3lz8M5KciTolGm@xm!_-e1?>p|NkSbuaS-;a>z1! ze)8z3^{XkZl42uVG7-u3jm{0%fDTBdIg_mtF9;K1gn?+4jgWqjIgAdg7OJt!hx7^jbx6xP*_ zD%3L+Z^M!xiaAz{3g;si(7OSK4DRbpee( zdh`guJQ%Zp=fPA2lNKO1h$_JN1;Z1JP%wDGxBwL^7?0owA51VXvH@MG zP!WSIGcdS7y$psA=yJhG0aF^xUNE9T8w`q8K`J=}#wi%8Kn1`RCSa|KQtUJU0Qe4ttNO<|Dg7rV3+!kPe}!(ch=c9ha=UewCgL(Ink1mJF*Gu546Uw z5(?32I5yRDLGwV}`LosD{W+5%qDry`0k!!~r5no{gJvHc^l0}vaysN`IZAx8Zp$Uh z*85_iEf=)#dXJyC<*qh@8G%P3tdEsSn&R7qw_T-9mq;9X5^{h1GI{+Kiyyn^X8N~T zQ%{&*f%O`*r;5z9zR!KhJ+X?y_xlYSPaS@Fp+lfZ3i12K6m$WjXHAK8e0Mn&gV+B; ziLz5EB1RGx(|uy>?EF*FM6EBrv6}+?C4^gZXH>%VUa0wE*5A|cOcV&1ZusvW3JdMf^LA%KRM&1CiP0$U#H= z6y6L+B|}mylI20kITmM-tj=NJVv;Hl;3|j9tsaMhTPf=K0tf76xS%#5XKFu0-Y;=G$kYAn9{^LY^b{ z5uf|xg>-n=#kUc{y&%yF9&{o=h-@i_B++PoT^l(OQoc)>4G>j~f}HVkCAZ3~8C!aN zd_AYDv0pP=L^W52LRN*mlqhYG{@6W+?1>L%GeXw}`(1^EjPSInjTL1-*%}2w2<#4( z<86>p%~B?`sfhmhOJou?sz*m`zWsHkH<3ZOd^NZTA;NSIh~7bJ4)7O* z{XoxvYCW+rV{zv>q&q10@5H z4N%)qR~JYNh~xo4U(P84Bn`M3>_vlO0k{i5(tx1>JtvskjHu_?)y zuHQ;d0wM=eFd(-h6JMIU9svmiPGd#$fYZn?y#u5a2rba&m92Gf=@=+CfY|`s=D=@& zeJ7xWpl!&DiQemA4-^{cE>LA4jfrX5wJign00A-#Y*luCIoJaS8(BcGU0imZzZeY+ z25?CY9m8ND91uYMt@`^9CeB@q0;R-?!6>S{2do7sD1b==vJJE!?0SKkVz;XskX4|g zKuv*;0(1yEb~2kz1H0m&W&vdd*cAr>A1EvOpUi>QrTT8~ir)bB3n(jq?*f!C@a+AK z@yE(shUXgPpjgBs^QSy%p}|F}Qhf|2=wC^1ZRxGDZ`ZsG5jdTBT#F9~BL zJ}(WkRbp*~1xNVYl}o+q##SGu!2)>n9B&~n!g9U-AB#_?{38{Sf)`HA*zu84=tBk_ zu&Na+@6SuUST4~Q%a43?pnUzgM0!gMlQ4HQXs0 zWGDiGoze2?bEnX{V1lv|m4T+Ip%weZ-Q78K1WrC)`I__zKj@mvntGxZxUcJ)P|Mow zO@@wK$j@Ak#J>b=%b~7C;iq*AlZ4}s17PL=%{jnJR^8Fm;N#m-rHMoJa3Wo3FSJb6 z#K&4$4no9(`;woZvJ^Q75x*&fQrmf0RK?3<&n~o+A)3Cx-oTAhorGg=x?V=)eN!=C zo3UPstbm+*z}dBPyX!+&;gI@F$!IUOgXJa)0B>lfLsIJw#J{iAsyQ>Ba6EwB1J$JC zJp^t+Y#RdNw2GCzwm>>s!C;bY_@2Tdn5$1Q^<&h8AV;0RYnvvoNq)S zYd<*AhQ(?cIg$kxt)MT}j+riT+JWoxm`J;=O*A!OjDH@deP0+c^3kAuTPtJc)eI|P&k2nrAppfX_a0+mU)ln2Hy81i7!9t)uh35$Sn4YX!uBmz$b z+y#&cV3vTZ0n;A18sK5T+y?RldI(@Gz{moU1SUKf%V0i(Aq?g%n5AIN6(|wdO$8PR zr~nxL4_dR7i7t(;2&u?`raz>`SJ$^lIQLI$dDAY?v% zM}c2bP+V0~d%yR|TQR%@Flj(F{EwX-o&H`_)dt)huxg|Yo9wpl29^wTHr4kAH<@hJ z-)PL~dk$<8nCfZQO7hB@LAi3b`{_D;Lr~R#XN2dUpj!n%0b^61}MNp)JAPfi-&@5m+0VF)0T3YdbK(&E3C1>6M zF(MEhpxtHlT+kaOXRv_@931-qlm&P{U;_W6=ls9+{r}>2kP`oV732=nzg-3Sxv27g zUjkBjy#6eA*>y5V_sL@ zp?G5bWS6Cq<+5Bz)xo0Fbq-~>8csgw%P~K%ED{0*v}Ze&+8jOiWiVowXH$-@bI7}q zI#*S6BdhMibKmpBg)>b?3ojMo#hj89^G-~PUv~(5@l)mW>ygq8eMwt>%)K8vy?pL* z&fbRhg{hM)k$;=j-ud@rmNxC#=twuld|g7hbn zAUtvW?->&#S$O6$j9~n|PbTa~Ktwzzp7d``#yT1PxDT=9k3Knrn-_2NN1wc5wtmuk z3kLMbYei$H(sw^Cno2#nQQ%dElfB2Q%lmv{UwQ655m1=y6Hz>!vOlT8?aJX!xr6aX z9(nj(4bDN|%nmEJy?Ko`#5|mH;N6p(*#Vdme<)Jo`=#8NoGUYVG_W}9#gC&~j*&!voiN*s0Z2*q2JzK1^NGsdEc#I(p~ovf%slwm1i=J5%4! zzH6{8EG>7QtNWqbtlzWww$qo4B5V15?&Idl{vEWU2HHeb59-o;2iF$Wq1HGo6uN-9 z@6k7|({}oOo*hc~S@G@m&E`52GP^2Nte8hWkJI%OTAHRwckvQ1S0wFcdN-m2kA}`A zXkb=_?^e<5+UGW8uXMUOqMB>+LGiGhUxG>(bITH^qvz0z_(@5cm2;eGy6L-sk&aHg zD6H9M@_sDjN3H4GXC~gOR)eC^m!GueJ(n7cgott4YKI^)_T;X{Gu*>Ju1O6>tNJXB z$F6G(9Y~Tz8^20(@X>pI+DG*CbXJ$#+1Q(B5{J-HWep zD@yz8o~gF!-kD`r4}2|d{u;jap zg=qQ;_oP;ndyjYh+%nmeJhQh9(H2K@kPpP47iTx)_Rp zAPPtaH3=O-gVF?qph!_fs(^|+fD{!J1q6H8qS&P=*m%y`Pu}C+-_Fc?o;mY=IDVH= zXPo=`UF-K>tEJkcp+_!c)fUc3+M1(|uOzvDU=8Y7O0}`U@Ah0-(maJcxE->1TO4Qm zaP^K$t68ifI!9kWP*;Pn$vCFDw+H0LZ zT|_L(H0;&%(WOlvc8WE8G5to!aWqYK5$}t+i90f6W!vm6`E0>V(OfTX=hHpXr=&~@ z{qHAu3cJegp6$7pvOUXB%38iP_on~uoS2YiDzCjVOCF__zmpG>r`xG-U zQfR-4!Yn)8u0mDzmX(R4)L?6IKt<(EUjluJ?4tW2PzF(Zw(%ZpDX4GS8eRGz8g_ASMtWL%4qD?-RP@xXQs2N zHcwgKi+?;=vtK(Zv5LbI=lW2?AD zNB?PB_Kuskft7cQuo1;dlFYCb8}TF~pUjFPcv42w@w#urlr+O)ecUeME?jV{Y%^$# z7he*MR`4vC)Bk#bt;7{@raVrzfNRoicZoIS)@~NvY4%^ zHGy~5NI$eQ2TxKo#;roopw3M!sYwL6Yrfz2t~WqN2K~yNYm|F}bjWB&W~72!?ZUsME{jEFN)9efScN%0AYSisH~k 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 diff --git a/docs/pics/_u4E8C_u7EF4_u6570_u7EC4_u4E2D_.gif b/docs/pics/_u4E8C_u7EF4_u6570_u7EC4_u4E2D_.gif index c8e3be6bf262d11f3e98009a2dbf7621f032e80a..763fc1a39fe0c495b6b54ebb5b3e844d70dad014 100644 GIT binary patch delta 14 VcmaFa%h)i1al=cu%`ctA838oK23`OF delta 9 QcmZpe!1%J4al=bD02OltXaE2J diff --git a/docs/pics/_u4ECE_u5C3E_u5230_u5934_u6253_1548293972480.gif b/docs/pics/_u4ECE_u5C3E_u5230_u5934_u6253_1548293972480.gif index 2f2a128f2c670620d001b85ff47bced61dcdb45d..1587890cc487e30bc31810a251c12711a49d49a2 100644 GIT binary patch delta 12 Tcmdm|)nKr}PIR-K;2|aeA5sKj delta 7 OcmZoL*r&C@P80wOrUIM* diff --git a/docs/pics/_u4ECE_u5C3E_u5230_u5934_u6253_1548295232667.gif b/docs/pics/_u4ECE_u5C3E_u5230_u5934_u6253_1548295232667.gif index d1ef30b75758d313f000e50cc38b1a26e4f4343c..312fea607503b2dd3fbc0e7b10968b5470987249 100644 GIT binary patch delta 10 Rcmexg-_XFg;lDlOPXHew1!w>O delta 8 PcmZo@VEkXd;lDiq64C^2 diff --git a/docs/pics/_u4ECE_u5C3E_u5230_u5934_u6253_1548296249372.gif b/docs/pics/_u4ECE_u5C3E_u5230_u5934_u6253_1548296249372.gif index 7aacca3a775ed016f588ef8313771f943e0fe24c..61c506c9a12fb5c4a5f5cae914d5591de1e9700a 100644 GIT binary patch delta 14 VcmbO+gRx-&;|2+z%@Q6jm;owf1!VvL delta 9 QcmZozz&K+D;|2*I01~JJX8-^I diff --git a/docs/pics/_u4ECE_u5C3E_u5230_u5934_u6253_1548503461113.gif b/docs/pics/_u4ECE_u5C3E_u5230_u5934_u6253_1548503461113.gif index ac918089c3a1faca655c1eb54b968dffb1a5e43e..8c0ba8e3803033d1e3dd1041897bdf432b6debe6 100644 GIT binary patch delta 11 ScmexS)=;sb!g_Lrc?SR`00oo) delta 7 OcmZpu_))f@!WsY&LIcVG diff --git a/docs/pics/_u66FF_u6362_u7A7A_u683C.gif b/docs/pics/_u66FF_u6362_u7A7A_u683C.gif index 921a24d89f0c053ed5c3c475caadb6a9c2a94c07..fe6c5503bcffa54df28b60970e4a6bdcb1240bd9 100644 GIT binary patch delta 12 Tcmewt+z_$hpXTO&s!U7(Eb#@~ delta 7 OcmZpO_!qq4pC$kh4g>)J diff --git a/docs/pics/_u7528_u4E24_u4E2A_u6808_u5B9E_.gif b/docs/pics/_u7528_u4E24_u4E2A_u6808_u5B9E_.gif index 445d421bc47002a069e93eeb882b15bace4a11a8..dfeff15bcf2f9fdc642a4b3cf29f1ce404d3f37b 100644 GIT binary patch delta 14 VcmZpg!`QHZaRZazW+tzHi~uOF1wQ}) delta 9 QcmZozz}Pg0aRZYd01^%ZK>z>% diff --git a/docs/pics/_u91CD_u5EFA_u4E8C_u53C9_u6811-1.gif b/docs/pics/_u91CD_u5EFA_u4E8C_u53C9_u6811-1.gif index 2f48a680cc088c66e237a33387ce764e2f210fd2..a6552b51fd6a261bcc71e285d8d65ff6525e04b4 100644 GIT binary patch delta 11 Scmcbn*I=+AOnh>f@G1ZtZUlG$ delta 7 OcmZoLxTd!uOdJ3VU;@$r diff --git a/docs/pics/_u91CD_u5EFA_u4E8C_u53C9_u6811-21548502782193.gif b/docs/pics/_u91CD_u5EFA_u4E8C_u53C9_u6811-21548502782193.gif index 25394064af91e00597d5e5ea95345bab9e318a44..d5a4eec5135cb19520aea0df5891e9748bcfc46d 100644 GIT binary patch delta 13 UcmaF8jj>?|
--> -

+

考虑到 dp[i] 只与 dp[i - 1] 和 dp[i - 2] 有关,因此可以只用两个变量来存储 dp[i - 1] 和 dp[i - 2],使得原来的 O(N) 空间复杂度优化为 O(1) 复杂度。 @@ -91,7 +91,8 @@ public int climbStairs(int n) { -

+

+ ```java public int rob(int[] nums) { @@ -110,7 +111,7 @@ public int rob(int[] nums) { [213. House Robber II (Medium)](https://leetcode.com/problems/house-robber-ii/description/) ```java -public int rob(int[] nums) { +public int rob(int[] nums) { if (nums == null || nums.length == 0) { return 0; } @@ -121,7 +122,7 @@ public int rob(int[] nums) { return Math.max(rob(nums, 0, n - 2), rob(nums, 1, n - 1)); } -private int rob(int[] nums, int first, int last) { +private int rob(int[] nums, int first, int last) { int pre2 = 0, pre1 = 0; for (int i = first; i <= last; i++) { int cur = Math.max(pre1, pre2 + nums[i]); @@ -145,7 +146,7 @@ private int rob(int[] nums, int first, int last) { -

+

## 母牛生产 @@ -157,7 +158,7 @@ private int rob(int[] nums, int first, int last) { -

+

# 矩阵路径 @@ -203,7 +204,7 @@ public int minPathSum(int[][] grid) { 题目描述:统计从矩阵左上角到右下角的路径总数,每次只能向右或者向下移动。 -

+

```java public int uniquePaths(int m, int n) { @@ -400,7 +401,7 @@ public int numDecodings(String s) { -

+

对于一个长度为 N 的序列,最长递增子序列并不一定会以 SN 为结尾,因此 dp[N] 不是序列的最长递增子序列的长度,需要遍历 dp 数组找出最大值才是所要的结果,max{ dp[i] | 1 <= i <= N} 即为所求。 @@ -567,7 +568,7 @@ public int wiggleMaxLength(int[] nums) { -

+

对于长度为 N 的序列 S1 和长度为 M 的序列 S2,dp[N][M] 就是序列 S1 和序列 S2 的最长公共子序列长度。 @@ -607,7 +608,7 @@ public int lengthOfLCS(int[] nums1, int[] nums2) { -

+

```java public int knapsack(int W, int N, int[] weights, int[] values) { @@ -632,7 +633,7 @@ public int knapsack(int W, int N, int[] weights, int[] values) { -

+

因为 dp[j-w] 表示 dp[i-1][j-w],因此不能先求 dp[i][j-w],以防将 dp[i-1][j-w] 覆盖。也就是说要先计算 dp[i][j] 再计算 dp[i][j-w],在程序实现时需要按倒序来循环求解。 diff --git a/notes/pics/49d2adc1-b28a-44bf-babb-d44993f4a2e3.gif b/notes/pics/49d2adc1-b28a-44bf-babb-d44993f4a2e3.gif new file mode 100644 index 0000000000000000000000000000000000000000..e2af5f10d48b03dd2d7b938834f2aaeb1939e815 GIT binary patch literal 37557 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%0AYSisH~k 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
GQS}w0lICqSJ539jxn?NVzJiM~n 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 diff --git a/notes/pics/_u4E8C_u7EF4_u6570_u7EC4_u4E2D_.gif b/notes/pics/_u4E8C_u7EF4_u6570_u7EC4_u4E2D_.gif index c8e3be6bf262d11f3e98009a2dbf7621f032e80a..763fc1a39fe0c495b6b54ebb5b3e844d70dad014 100644 GIT binary patch delta 14 VcmaFa%h)i1al=cu%`ctA838oK23`OF delta 9 QcmZpe!1%J4al=bD02OltXaE2J diff --git a/notes/pics/_u4ECE_u5C3E_u5230_u5934_u6253_1548293972480.gif b/notes/pics/_u4ECE_u5C3E_u5230_u5934_u6253_1548293972480.gif index 2f2a128f2c670620d001b85ff47bced61dcdb45d..1587890cc487e30bc31810a251c12711a49d49a2 100644 GIT binary patch delta 12 Tcmdm|)nKr}PIR-K;2|aeA5sKj delta 7 OcmZoL*r&C@P80wOrUIM* diff --git a/notes/pics/_u4ECE_u5C3E_u5230_u5934_u6253_1548295232667.gif b/notes/pics/_u4ECE_u5C3E_u5230_u5934_u6253_1548295232667.gif index d1ef30b75758d313f000e50cc38b1a26e4f4343c..312fea607503b2dd3fbc0e7b10968b5470987249 100644 GIT binary patch delta 10 Rcmexg-_XFg;lDlOPXHew1!w>O delta 8 PcmZo@VEkXd;lDiq64C^2 diff --git a/notes/pics/_u4ECE_u5C3E_u5230_u5934_u6253_1548296249372.gif b/notes/pics/_u4ECE_u5C3E_u5230_u5934_u6253_1548296249372.gif index 7aacca3a775ed016f588ef8313771f943e0fe24c..61c506c9a12fb5c4a5f5cae914d5591de1e9700a 100644 GIT binary patch delta 14 VcmbO+gRx-&;|2+z%@Q6jm;owf1!VvL delta 9 QcmZozz&K+D;|2*I01~JJX8-^I diff --git a/notes/pics/_u4ECE_u5C3E_u5230_u5934_u6253_1548503461113.gif b/notes/pics/_u4ECE_u5C3E_u5230_u5934_u6253_1548503461113.gif index ac918089c3a1faca655c1eb54b968dffb1a5e43e..8c0ba8e3803033d1e3dd1041897bdf432b6debe6 100644 GIT binary patch delta 11 ScmexS)=;sb!g_Lrc?SR`00oo) delta 7 OcmZpu_))f@!WsY&LIcVG diff --git a/notes/pics/_u66FF_u6362_u7A7A_u683C.gif b/notes/pics/_u66FF_u6362_u7A7A_u683C.gif index 921a24d89f0c053ed5c3c475caadb6a9c2a94c07..fe6c5503bcffa54df28b60970e4a6bdcb1240bd9 100644 GIT binary patch delta 12 Tcmewt+z_$hpXTO&s!U7(Eb#@~ delta 7 OcmZpO_!qq4pC$kh4g>)J diff --git a/notes/pics/_u7528_u4E24_u4E2A_u6808_u5B9E_.gif b/notes/pics/_u7528_u4E24_u4E2A_u6808_u5B9E_.gif index 445d421bc47002a069e93eeb882b15bace4a11a8..dfeff15bcf2f9fdc642a4b3cf29f1ce404d3f37b 100644 GIT binary patch delta 14 VcmZpg!`QHZaRZazW+tzHi~uOF1wQ}) delta 9 QcmZozz}Pg0aRZYd01^%ZK>z>% diff --git a/notes/pics/_u91CD_u5EFA_u4E8C_u53C9_u6811-1.gif b/notes/pics/_u91CD_u5EFA_u4E8C_u53C9_u6811-1.gif index 2f48a680cc088c66e237a33387ce764e2f210fd2..a6552b51fd6a261bcc71e285d8d65ff6525e04b4 100644 GIT binary patch delta 11 Scmcbn*I=+AOnh>f@G1ZtZUlG$ delta 7 OcmZoLxTd!uOdJ3VU;@$r diff --git a/notes/pics/_u91CD_u5EFA_u4E8C_u53C9_u6811-21548502782193.gif b/notes/pics/_u91CD_u5EFA_u4E8C_u53C9_u6811-21548502782193.gif index 25394064af91e00597d5e5ea95345bab9e318a44..d5a4eec5135cb19520aea0df5891e9748bcfc46d 100644 GIT binary patch delta 13 UcmaF8jj>?|
+

+ ```java public boolean duplicate(int[] nums, int length, int[] duplication) { -- GitLab