From 9595be3328ad25bf1e111369cbfce2e58c48f2c4 Mon Sep 17 00:00:00 2001 From: houbingzhi123 Date: Thu, 9 Nov 2023 15:23:58 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0HashMap?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/posts/Java/hashmap-kuorong.md | 18 ----- src/posts/Java/hashmap.md | 25 +++++++ src/posts/bian-ma-gui-fan.md | 13 ++++ src/posts/https-http-diff.md | 9 +++ src/posts/leetcode/3sum.md | 70 ++++++++++++++++++ src/posts/leetcode/image-2.png | Bin 0 -> 61718 bytes src/posts/leetcode/image-3.png | Bin 0 -> 38181 bytes src/posts/leetcode/image-4.png | Bin 0 -> 10088 bytes .../leetcode/intersection-of-two-arrays-ii.md | 51 +++++++++++++ src/posts/leetcode/linked-list-cycle.md | 57 ++++++++++++++ src/posts/leetcode/path-sum.md | 69 +++++++++++++++++ src/posts/leetcode/word-search.md | 63 ++++++++++++++++ src/posts/wangluo.md | 20 ++++- 13 files changed, 374 insertions(+), 21 deletions(-) delete mode 100644 src/posts/Java/hashmap-kuorong.md create mode 100644 src/posts/Java/hashmap.md create mode 100644 src/posts/bian-ma-gui-fan.md create mode 100644 src/posts/https-http-diff.md create mode 100644 src/posts/leetcode/3sum.md create mode 100644 src/posts/leetcode/image-2.png create mode 100644 src/posts/leetcode/image-3.png create mode 100644 src/posts/leetcode/image-4.png create mode 100644 src/posts/leetcode/intersection-of-two-arrays-ii.md create mode 100644 src/posts/leetcode/linked-list-cycle.md create mode 100644 src/posts/leetcode/path-sum.md create mode 100644 src/posts/leetcode/word-search.md diff --git a/src/posts/Java/hashmap-kuorong.md b/src/posts/Java/hashmap-kuorong.md deleted file mode 100644 index 24f2490..0000000 --- a/src/posts/Java/hashmap-kuorong.md +++ /dev/null @@ -1,18 +0,0 @@ ---- -date: 2023-10-31 -category: - - Java基础 - - HashMap -tag: - - 重要 ---- - -# HashMap的扩容是怎么实现的 - -## HashMap的底层存储 - -HashMap的底层是用数组实现的,当需要存储元素的时候,不断put元素进去,达到一定容量后会扩容,一是能存储的元素更多了,二是因为**位置多了,查询效率也会更快**,之前可能多个元素会通过**拉链法**放在同一个索引上,查询的时候还需要遍历链表,时间复杂度O(n),如果位置多了,一个元素占一个索引,查找的时间复杂度就是O(1)。 - -## 扩容机制 - -数组是无法自动进行扩容的,HashMap的``resize()``方法会声明一个更大容量的数组,将之前旧的小容量数组中的元素复制过去,并且重新计算hash值,**计算hash值是为了将元素分布得更均匀,减少hash碰撞**,这个计算hash值的过程是比较耗时的。 \ No newline at end of file diff --git a/src/posts/Java/hashmap.md b/src/posts/Java/hashmap.md new file mode 100644 index 0000000..bd1a502 --- /dev/null +++ b/src/posts/Java/hashmap.md @@ -0,0 +1,25 @@ +--- +date: 2023-10-31 +category: + - Java基础 +tag: + - HashMap +--- + +# HashMap总结 + +HashMap实现了Map接口,Map中的数据是以(Key,Value)的形式存储的,在查找的时候,能够通过哈希函数将Key映射到哈希表中的一个索引位置,从而实现快速访问。Key不能重复,但是Value可以重复。 + +HashMap的**键和值都可以为null**,如果键为null,则映射到哈希表的第一个元素。 + +HashMap有一个初始容量和负载因子,初始容量是哈希表的初始大小,默认是16,负载因子是哈希表在扩容之前,存储的键值对数量和哈希表大小的比例,默认是0.75。 + +在put元素的时候,背后调用了putVal方法,**会先判断定位到的数组位置有没有元素**。如果没有元素,则直接插入。如果有元素,会**先判断Key是否相同**,如果相同就直接覆盖;如果不同,就判断当前节点是否是一个树节点,如果是就调用putTreeVal将元素添加进去,如果不是就遍历链表插入(插入的是链表尾部)。 + +## HashMap的底层存储 + +HashMap的底层是用数组实现的,当需要存储元素的时候,不断put元素进去,达到一定容量后会扩容,一是能存储的元素更多了,二是因为**位置多了,查询效率也会更快**,之前可能多个元素会通过**拉链法**放在同一个索引上,查询的时候还需要遍历链表,时间复杂度O(n),如果位置多了,一个元素占一个索引,查找的时间复杂度就是O(1)。 + +## 扩容机制 + +数组是无法自动进行扩容的,HashMap的``resize()``方法会声明一个更大容量的数组,将之前旧的小容量数组中的元素复制过去,并且重新计算hash值,**计算hash值是为了将元素分布得更均匀,减少hash碰撞**,这个计算hash值的过程是比较耗时的。 \ No newline at end of file diff --git a/src/posts/bian-ma-gui-fan.md b/src/posts/bian-ma-gui-fan.md new file mode 100644 index 0000000..cc114e3 --- /dev/null +++ b/src/posts/bian-ma-gui-fan.md @@ -0,0 +1,13 @@ +--- +date: 2023-11-1 +category: + - 项目规范 +--- + +# Vo、Dto、Entity的区别 + +Entity是实体类,对应数据库表中的字段和属性。 + +Dto是数据传输对象,对应实际需要传输的字段,是用来将Entity转换为Vo(或者Vo转化为Entity)过程中需要的中间对象,因为不是所有的接口,都需要数据库表中的所有字段,如果用Entity会造成资源的消耗,也会有安全问题。 + +Vo是对应前端的HTML,有一部分字段后端数据库表是没有的。 \ No newline at end of file diff --git a/src/posts/https-http-diff.md b/src/posts/https-http-diff.md new file mode 100644 index 0000000..e6b9d79 --- /dev/null +++ b/src/posts/https-http-diff.md @@ -0,0 +1,9 @@ +--- +date: 2023-11-1 +category: + - 计算机网络 +tag: + - 对比 +--- + +# TCP/IP四层模型 \ No newline at end of file diff --git a/src/posts/leetcode/3sum.md b/src/posts/leetcode/3sum.md new file mode 100644 index 0000000..2bbec84 --- /dev/null +++ b/src/posts/leetcode/3sum.md @@ -0,0 +1,70 @@ +--- +date: 2023-11-2 +category: + - 双指针 +tag: + - 中等 +--- + +# 8.三数之和 + +给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a ,b ,c ,使得 a + b + c = 0 。请找出所有和为 0 且 不重复 的三元组。 + +``` +输入:nums = [-1,0,1,2,-1,-4] +输出:[[-1,-1,2],[-1,0,1]] +``` + +``` +输入:nums = [0] +输出:[] +``` + +## 思路 + +题目可以拆解成两个要求,一个是和为0的三元组,一个是不重复的三元组,但是三元组里面的数字是可以重复的。 + +首先我们可以先把数字进行排序,如果三元组的第一个数字就是大于0的,那整个组肯定不满足要求,直接返回空的集合。 + +如果不大于0,可以固定一个数字,用双指针寻找另外两个数字,一个在i+1处,一个在数组尾处,大于0就右指针向左移动,小于0就左指针向右移动。 + +```java +class Solution{ + public List> threeSum(int[] nums){ + List> res = new ArrayList<>(); + if(nums == null || nums.length == 0){ + return res; + } + Arrays.sort(nums); + for(int i = 0;i < nums.length;i++){ + if(nums[i] > 0){ + return res; + } + if(i > 0 && nums[i] == nums[i-1]){ + continue; + } + int l = i + 1; + int r = nums.length-1; + while(l < r){ + if(nums[i] + nums[l] + nums[r] > 0){ + r--; + }else if(nums[i] + nums[l] + nums[r] < 0){ + l++; + }else{ + res.add(Arrays.asList(nums[i],nums[l],nums[r])); + // 去重逻辑 + while(l < r && nums[r] == nums[r-1]){ + r--; + } + while(l < r && nums[l] == nums[l+1]){ + l++; + } + l++; + r--; + } + } + } + return res; + } +} +``` \ No newline at end of file diff --git a/src/posts/leetcode/image-2.png b/src/posts/leetcode/image-2.png new file mode 100644 index 0000000000000000000000000000000000000000..a3bc657cda7f12fc0f6fb4a2a8d8a6e5c5897601 GIT binary patch literal 61718 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�Y$p@?ZGi@O)9F- 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

f|wq~uR#s~}i*=Z%^P2tkAqKaW03j7xFy z%ox3kqVbLY*$b&r%XW8Q;ZoOdJk+jwSQKok`U!>MRT3WNz{L$-%=fG8_g&n#$X1?3 zExlK7>HZcYy(5D!ELq9r@>r*EH+e~9szV=hO8(bW)Q_dk!~ya~Kk`ZwHMi&w_m&Sx z>8xI~{hc4Il0oFo=dH`2_9UL%`bsfDL-$wD$k5FVso5kYAql)XGr1%A!3IxN^Np;D z(HYRaQG&pvJ%68ErHX>=QNkMDePL!PEnV#_Q8%c*(Yk@88BZlg6d%(h$}XG5vUv`b zLj!Hg;aX_UD2!BEHh{OL6K?|Jf}Lyquu*? zk0PXr?nVuFh0!LiV4xpNE$qDN@@~XRE^Pd;unZ&EjkJ3H9nhm6N#(&oL7ml^LXW(D zs^~dK73BH%!TLyK&rz=1G>cpHdQeE*6a~rA*3%$S3pgAQRU=I$`g`AJ9plZ22T-|e zPu*@aVx!u(AG^#{JgMgf;Sm`ETy!oc%0-ZfIhYu;2ml{Ah9cN{&b6_1U|zTm8^EMU~3c7yh^$tH?Ct;|gik_(mYg!A&75p+!NofH=1{XiAF&Cb1jqA3pbLr=BQ8L}3jtCa z!ONcR(*OsD660bP-6F;0W&N*&gS2ZS<7PO~w7dRHR`3q~J)6ro2XmT2Zq_5R+f=l6Ue_VU9$ug10SD12lL!2z}@D3TQY$?u{F z227_P2BW8c>!6SJXHb0O;B>Alnc@4RI6eA2G};{4A?A1w7Ba3uzW^&wd`u)-@BBQ0;=D1jvzOWS*nw(|NyohDAqE23UxsM$ zh%k7|AgL3G={C8cj#DetIh(ba1 z^&s>s@Mjj8rO;jKxeMLx5P;;8j;dcM%b7*fXg;os5Rqaoj6h3d1r-4`f`pXx_u)sC z#YfTF-^!)@f8`m3z%hu~R5O1`U|RDLpb+XbmN(M<0-7tTqsz)g21_$t``4t;w7>@8 z)MnzzrPsD*$Z}VT)~Wr2PVu#yrKoi|SnRM|LMsD5bLBJdxNnq{iCBigFr(mIAJ*NZ z&DN|9PVF|78^;^PW%>-yF)_?~NW>N}} zcx1tN04l~6lm9J)?>0VUIgdRK79-JEiHKL9AhTwG6B1uhfgUQPie0dGa+}>%BaBsz zBczV5Bcj)>I|v2g3iFY#n+-oSQ|!+nUr=3L{Qy2WMxs2@r{=eE<1AZ+_#4S@Q1LS| zF|EVz%U{f}dv1Ruu@r-%Pu@0~(>MRUQlQ5)UR z`a52;l$SmFgc!mqbdNLGAJHaX!Bh&hTZz&Vy5;;+ltx26Znj3fT+l&8Nc{nwiuEog zDvF(t*%Omo9HBr}Z#pnK7SFi`A3iq+g_er@mUbyb-a(XiP$G*P*h^&2uaqh(0#CLv z*L?Wdg3EhiIx!hU6CJ!MRz3x0vZtj~7VTCTr+NrUSbIh8VZJq-QaFp1v)osyJYG-0 zT-eYPJT-D}cKTgbE~fu5HfhHeqr`#I-Y=RkQ?RD%9ieOFU=e0Fb=VJC6+dBta*Qr~UO+&`;W zw3$s03GdmAi7fu?`pSR^1Qp@9IN8tCCzE!9-gI1TrOB#3jt`?TdnH*BY>R+nSTs5% z#K%uVKqPF{OfEXUXKHMBFHN&yLiGGM{mKRmzW;(E{sH+enoXrn0D6k-9O|=)4)6uT zC;V8T6b*eX%Y>+BncN!FguY%92o7vwU_M2Q43!xNgN28$5365GbSsQ=WJirUEkGhF z&$y_&8;g=r!{?m#SDy&!1fRzGAF(}}jC^aW|H?#lMBLsRi(Z;oD|_WLM+OAs`kB<5 zV0hP)U=|(<{WkfHt}0z4lp5`}c>(AANJaFVz)tHx!;U zT4H<&mW|JrTKu>12Cewk6Y>Xy#Uv$wjUsXCPsZSn&ds4y+0 zLa4UqV*IB2VBINTM%GKkJO6<2BH%sz>0?O{nF5-Nv#UN}7*i*gvJJDgf|gVmUrS_9 zLKEjkr?S5PsAG_ZrSlbTltH(`oSc)jz&)6z~)LJsO z;VrG{o;^N_x0D^m#uWTX4j)IcHr(;7akx~f^3{UR4q3N+5oAqEi=^Y-7>`*gFn+o=B z$>!E8iqxCGi%heW_8DGew2Mv{#qV>OUQD*pK4~Xyh1r(Z`|DSq{R8p$-JKlCbN!FZ z2-XJFrW!WAziFZ#-Lki}!s?*$J+-YNTA6Qo{82=*y8HAJ$<;S@N-QYBxP91`kRpa| z4Q1JORm*DBS1H(AK#>2vY5Awejc3+CGz2N3RPQQy_r3@ELx{p-9-jm`s#W#>%LUkB zUa{CNfr&(r6gC1BoPWT1ZaAo%WAr~-R4%X^rD;V(MtS)C_+UyJMzB^sF!1dg-u2m` zf9cF{*RPeIvs#&KLx^eb?b&25zU#%Vw6M8&SEW<0sgC1Zsjkc99r5&ioFe~Ag48b? z-1XvD1aWJ}*!ZXlGv8+2m71^a{56F8B5^nVNV>`W`_n0{^wlDxzwsMRm%GU(yr%W0 z`U~;wUrEL)Dn?-$+eVl-w?<{BTECh|lo9D)E}s2z@gf_Ii69<@l;uZ6!5?rrzk;X@ z`2Z09Ex?Eh+N2g4c;46+QwiD#D?LE-EQWvCLku$v5U<=?5uO7cfISVU}pChm_yd+mE?+JLP`v z^uLQ}bXmT$bC_OH0XGV#;B{@!CxfUBXuc46AlzZsro;118hnZS&4GW9(D`M3Uer_G z7k>|8>3dAs$$A*e7laq3F8_pLJgr(jeWaezz%j;E@(zuFQlc^Eh{uNgJYWE*;O#HO z>MyT!!euTDzY>i5;=11AWh&SD>*c=F#UyY{LcTLdBXehkpH0mPz__VX39oP6&kb1b zg%sp%T273nE^%mab(AULQS!Qcc`pUwSWp;$1-;%rGSWy(ODRERR_pKFla?31mK}is z>ati(FYh2PFApYno@Fe9IbG=5x15wA&8!2^cSeTUc93+AN7D*jVG*fYf8xKGmasi&yVZMIe5TjQOXxfp_5eFIZr zUtYjss*mvEBmMx0MUC*Wuk*Mc|K0f*&fxp@S}8SzDe_%=C~J^k{Bhh^M&s9|v*t{{ zRnJG?{hzc}y-20?vkWxyubz|%s-zu#Gn{!KaycZU5=Y&Bmiah@OtFlVyo>d(J)0>> zXK;3lts}adzz(Fr6bihWzcX4qCw}wu0;xEbs(OKa7QXSvmZvWO1Ll3VMN&9}jkxt@ z#7QVav!oKZZz&c}V8*8d6i^s6&%w?K;>Xi`nR~^XqDQkDe9z(gX>nN&35zaJb?3`o z7oJ41yYueNE#s$O-e1kA+#DFLTZ&wYgY5)dg!}?11c$8%PQ3F z?bQ3y&$fo2zCXvT`XG9nRZZSk-e|b~bv^}5+bS&;%1=a;<%6LOHZS@9@i*xdEs9U> zl*-dH=jHse9@#q9i}bl2T@MBkrNlI6x9{)oJ9LQbu3{+*JzmB9!@3ig!F3hHN#-zx z9$@pP(wwmM>#CSLWx(Ihylg*R%Di6du;SXdIp;B>?3yvPhh`)uj=H_l;5}y_d|v$K zN1fE^?62sYYDp|@!bL&Lg7_Px_Iq#{;DIA%-5mrAcj2t8O+tU!jML>}*R`2P+#>FEHhJv!`#Ye=&O$Vh3Ut4^DG$@ax3Py!6%A%7?ceps zy_@_+vn#t)$@A*EjB=0nmo`6Dqj?oLnlHg!gqNucJQ>ii2<+_a$S5fvvCIBx^(xTp zy&*s-XzT3_E-ky~K*B9>!4Y0vGUw)JKp|Ydf{_lPD4Hu~=@?{^*1yGkxffhqB!Mnx z6GVBz!E|iEztvh`!_2Bv6i=_8l*CBGZqG(V7B$T~+8i+Z@|l{R%Zaw0#&l8-twq`! z`(Hh6c1o5VTRf}rKL61AFiw6-C(rizHi?@5tYFDNdobr-wFPQrp)W%&c2X={DPO*` z_o(ACud`{9_C1Vrid7_co4?;!6RKTa*sLWL@ww>pp!_R!;jLsM35}1LU@e4-(jiaI z)4|wUEu851@Gg4$KSen(ldnXiNWtdCoT@=m;?}F>`}Jp2Q-PD&$Fh zb3^RTF*#l+A*_XH1n=Cr&0nW1jAcV{>{>_f$YwX*Uri$u*wJH+%={e*jj8M>UPu7U z4(zGu(@7r?mqn61_LJWYnhfUH4r0V^75@uM!JBa=Eyk1&1~$~ksuqhG`Ezq~Cu_um zlCSNsk&Zm+2N|o{_7b0&42To z-h}E4iI6(S+IP>jslcZSDhBWa^Ir93-=HgC47Ne{Vwwd*1lE^5{0`%3*hRYRYRHo+ z+d-^ndCl0tl_HM&Np+kuDbSoK$4-v-I>dTtc?WH3@x|kVq$&4K#{m2q$P7#(oU@%Le6Xz3f$ZO`RXYXTKBHk;n~ zp1RO2o14c(V$~f#)L-`G4d8dgHamw54)4qVIH{;O0Q+hbqz&jSLvaM1zNfke!5&?N z6+vh=mrC|i*rSlh1c!$peei9$1uBMypzzPHRGUF7DXFFQsCMZEafJJW&Immj0B}WP zH8eF@KMQeZUK_yuLCHol+6*$rPh8T}&=5@5q#Gh9Cx1}475w&Llj5*}0G`hZr&@!< z1la$T<_1P-mWt}9sbmVu`(cc9_dw_kBN2e9lnA6FD6vw$_G{z;^(IgrdoUfETk=!E zpoBhs}-&PITtb@sW1qB*lV$i4F31z z_O=lZtV|74K;?^&h027*>vJitWSn2O!qsb8uJOlF1sq_bB}9b}Q|w#VZ&5ROFIhy> z3&a+IM8_{_tF28yqQDaq?7SG}SYuU)JTY?j?#&ah;Xtv_9ga_{`qQKOp7ty#d|b(- z)O;rHQ59^ySV8c9<{MW}5RG((G$yD=ZGMBk<1Q7xMhZ6$trzj5#FzkruVe>w(_*^3 zSh|MNf7V_iYF(D=)5J*0@q$V%wFVw@qLYIr4kHMh+D!c4)_)?19gi+r=ZyLRKp{#u z_(7@`=?m^h-2|vI&QR2eosgi&Q@H z+zefEX2NGn_1NCG1ccXW*H&H)Nxd+^qKjwtM4Dyb&WVt|pEJ7Bbt2!^podC__Qm6F5`apQ?-{mtjfTd8FN9RU=`z z2gVx=W_M=nwHrM&mm_MH2B9NCK??MWlq5n1IUZ(fS0JBZ!Z?a}wd;bB2}<|T=XRF# z74=yPc!tk%=SA<`1D6m9#67QN`z1$Fff;5+ws!{6%Z)JniFq6VB1G^zgw9VyV=VxXW=NqiZ3G(|Ej-DbuLoDkRl=wjfoYG}mv zJ)?D)#FF#~ZkdqzL&`d^0_k`A^qN|5xCxg*KCbMnLGy*|TPQ0XD4Adn)*!kM)A__Z@XVvITyRqEND zxWPv5F^Xsm1dZ@RGJH%oT#6VLKAQBJxwr0&fugcrEOJCHBD7PdfF{m>gn7)bDvJ4> z^ejlFjoxbtnKx?<>#Y#4a{`}wc9pIIfAB;H(3BBt;E293+1vZ`yiZ5d3z- zMEx>{dmY_qsx{ikwSH+ch+?+Zlgp%fOSJlaSKuGg#l-1eGNp+)jBXZITCrzEu%Yjy zJ33*pVCu$DtGKq_=8W2a^B3^x1(e^}NqMGrPHh2MY4nQ0tWIg%*hrX#g@uU;regWx z!3KwAA1kThZ4018M=@zeFiJ_$tB|bD9(~K>B9@-NPLY%&g6Co|{zf=%}~e;2`w%^&5E>dUJlYfw|fLDbm2@ej<(dBXXbq zP=$wZXh1Hpx$orZ5GINU8||O-vS%O&ee)Mi<3EGJ zqqplNEU_!v;$J!{tA32E)IzQ+Vh^ypcYVAJrg|2Zd5e|qjM}2Irw;ha$ZX{k$uA(% zagpXd)5{s&RhvgJjCj}y{J)NlLO+%*S;(&c{i;TjthoI*_b!`4S?|FLg7bl#sortT z5=GHV<_HWuvPH|NAm)%(4rV1;GdbNP<_P8}3{wee>dJLxInQYi9w4j2A; ze@Ulfcq5O?GctDfi|g)ti^;3bp{q{!?_#?J(&5;RPBW+ofYQsP@InGeA8j!IH49dK zs;DBXl9z!!O_y1#@eJ|}(7M5NU32Heus%a7C;UM8)v?pjhlf5eLkN&=SRQx#1kE!} z4b9I%xjQD3auu1ZYTz0IOA`Zm=fAZIw!HAEn^y94Wu{fs@1=?0M1xO*5Lyjeo1uKmqQxG- zZj1}9aua;4#VnaIiUW{9AT;2!QlB=u%h=>uyRo%)=5j|skf1vVycOo2(h$WzlNJ)Sq z8X1NRIJ5Wn)!`SWK|eF`BKF@M(a237xWkUTE&2r9&HtFow$ZaqHmUmkMIO}?1qD~^ z16Wofz{AaUg2pq3Nz(A1Q#B|_qqwRONK@YUl~Un}8nc#s{n=STmC;XNTX1rWUY{AI zT$udOfbT6!9{lLaq1&0|z=k;F1`5|2v!@GiUX9-JWCLs(DF~#W_Z};{`Bzf({10D! z?TRD&rY0vv0Nm3xG*pyTD%3mti?aO{=fC$PxPmDt#jT#(ztbwq9cZ>@FL%;26nzp| z^P4&uv4Qk~8U!QPna6V>Rt;9-PT1sXPFezWlJ))|1H;Gcn=RHL4mbavqeuMq=N;rF zI?|)ea$Nj6d~_#$6__&(s{`*I)xryRlFmK$-@a985h_a#@Fp%mepe?0qlfw=55_Hca%q)|02e*(yerpS7ps&`IW3cw_| zB&3C;L!x$J)8=$ajlDC^f}UtHu&q%MLvCK}^qjScZ}~XYFIg&m*1dUNYTt~F4T_Z& zCT4tb+S@CS;Ln^$PfuTPIqfi#`5T%_^p!*`&rz-l2YQ!2lm11wN zHVC|^g?Cxs)lIuco>peVfcWPn9K#5@CS4Nt(J(8dz1YT};1UmG20gZ(e~kbxC%yT^V(lW{V+ znu29yXer0HPlRf*kq0XJK4!$|$+Pq3QEycfndk1#<&!5!MZ6xL_rQ@~z^OTs^t@30 zN`tDZD%6LRWg(t)oGA0G&ossfdX*C;`$gV%!ghe>LQihK;8oTp%>jX*Bat!-n?sXFEN2Kw|HSmg|tbrS9MQk1GN zZ;f&rzb&%570RaU`p_cdY1_L2t*`$M;Ev2Ypu5U5>eM<3T|lxIF@oTx^lSG!lakmy z)Vo+!=NS3QPfT`g5@jBRn&^8()m72slsMBAYmjT^g`Yuhi7v-+-@e-VWm5^2v;_!O zu#mC?MP_0;bFj)xwMiXfwpq#G<6ALK z2n3-{cSWP3*|nsONz+4;^dK7p)xi19bVZ5NGk6Sa?Y$>XSTDD9Ho47;v*_fA0Izba zGc|8^Q5%?KCYpDc&>F74gjvHaHnyfGpJ`MQA_(;jPd;RD^B(S$O6r=q!P z-xLE)gU!Y*@R-uNH3zxgCBky7{`qrJ9}aKAumR=@P(5RZ_u=C((`xqP=;)FSKJ!WD z(W@{iB-V2<=K5AcrSz#?A%o2DeSe#P+Urq$O|~wQPTkUhs(8i>e5rEen#V%S7$tw5 z3FAG4B-s3|sJ#!kQDcb9k*+pFIz^%B7<25C<1Lszwh4pzhE@XFA`hp#Bq{; zzX{?|bX;twTHNEs;tQ?Aa5yY@++}BuMrk!~w};%HgK1tNW~kh9Sk+*B*V{+xv=CDb zXu+0<91$JC5WHWMy!S+rS8(&W2V4QrPZuF6N#!-w$!bX~HLw@=&R0Gv)*mgukILyRFah1T20?5M;xN|Ri7)4aSpo^YG*>ct?)P6U?Krw!1KLfcrqZ|f=%QJj40qY%#k4v zO3@{NY*}|B=$LNo2V*gSBAoBIGiZgqHvWmd+0mCS8N_(D1m$-AB36~pirzv`qgSC1 zcxuoMNnIZI;fJ@{kUL5U39k>Nz2%^N|7UR;E8K0z58?3g9g}NHNorF^!@ue9Yw@G= z^co(s^L78PcRT;>Q;sdZeX*JSyJX7uuugCD>9xjp2NNr_9Y1US20}-MXa8!o{;iCQ z>*fA16&erttC*9(b<@6altOcPA+5XNAJ#=Ka#O2PfDA1R1V3mW>8NRH!SS;}e3B6G zGim?`i8Fhwks$*9X9vR0vqhjQsfG)O`4(`=KEg5z5=-bve#{%_cz$2Kf)wTd{P?x6 z+ClmUZP)7tToH{2DN_-T(nCwPNrck!n}H_&87Ai7+W+!m5r}7yW3+teB@{Lk1+=aj z%qE4(I^#;u^B>#bhuQN0_)#z&0O^n3UvpvY|J1M`P?5P@CmcSc;(wD-Z0;#37o?h) zl#+sppolKc%ag5iVY*U64+O24SI2vH7c!;^3@x6SL z27WWHJ<~VpBQ^SAd&z#1*gLEPu>-LD+GC5-5g6L`uJd!U_N&!%*I0Fe$yaPyHQ0av zafZjNzTct28L!YQ!Y@|j=58avi;mzVhp@hrE*jeouC|MB&E6nbo`p9*kq^FuLufxR z+dqqxsLHa_4K+PnczAtz4oI`&}Mu7*=vE2=!fxPumDN)ERQ6NJVBLC76!B1H=yLUJDN1{~)kqduwZ&Rj1t{0>3I?ql8>o9t-Wy z)inrun;$I_oHs#$0=#_+S5dXagPh?c_9P4tc+(775zs|ImH;N=f8L;gDeG|IQk29< z+1se^9I7;o+5^0Aq&+AG2^~&#RpnRbKHUV@&DfEo?_g zo(J#_B3!|-gzPU9hwu52ij-I|rya3@UdI3B0^EC+sr~Qn-!t!f!LG)E<3~4^uhu=D z>Sg>b>bu#{R%l$~^jm#jdgLhCC2(f_&EvqCeG}6aK5?`}LB@9>&y;1GcS7%+{(0Ro zUHP=St>Q4Zr=RS-%FUZbresExqMP0?XXvLM#krL=w5Z)|MYbriMCe)Wm;`jH4ZlHW zi3|+g=wF5Z0~~X02}4fyu1LnX8YSxo4(H>@N1;M9RiQwX1;tZu2B9!nN4Q*w%h*HkuT`}}lw)5{vZ z_!ocHvF>3oNC$`xxxuh|-Yc|odRT+rlzzNOMG>i^3J4&pZxFOsIzRY&`1qqYy1{dP z;lQI}lgDE0^zX|AyDdIHun20oC@_98?x`t#K(LHP66g{r@R{ATGa!RK;; zai9A?nZ9DrW1#;yJ#|ARL`RJ(fPsA{Fj!g-ks(n`gd_Eur1D~EtmB78>P%+3te`{^ zhiDhWGbFDG1`f7L%z25HNoqbtth`noX`78FZx3@-H>mm6*B}ctvH+sF$H0NfkZ-Z0S~a9ne|>3VPC-F{}N#F zozMH*7;gWpdmllUkI>ygX$I*AS+%pse`7deKaz#+3oX#9ohi>6QfLw$|H@k%CZ*=Q zD2SDup;&wT@YZ#spRd2H`l)gjiZr{Ln%yzDPsIPw|{E-I7bvm!Gf`*+_M8@ zYZh$&GKf{}zvxlO!Ttl~r7{C>DDS@dWkeSCTCkBU2$MNU!6T^F=|$pEkx{jx9w799 zP~UuZ2xB(YE^hKASb#L9(ge_M*dilS&eX8=C-+D=saMXFM~iH>41+dV*~m2B!zPDq z3~E5A+<-TRO+bf_D{JGFS=Hby|MKS!u;!PXgshee*wPMA9M3WRsEH>F>DaKg2(SeaXLKAXA22QhBcOIbSIGayDQ_=w|ND z=Hozt1=42ULbG7gS1o%_H%o%@QG)Du-ui|-EM<23W_IvRY8I=SMYo;Uv@1|5)7_9# z_afx*3&@c|Mq%56r_tw|Nd(qu!xsFEh5pWC7t z|CEdQ$%ypr%)Zmh(PS>SZA!#F-qhwW^#`R@rW&&}{~l{T?22BvkN=vP8vjr?K^QQALGYJrcb5B0?KjTtN*v=Cz3f)pT0C)I9$E%h1yqEYS>{^* z9-w=__x1%ZngUDE)`-D<#i!^Cf_w~}q?9M5BKE>}Ie5F;P|8O>yg|0dlw>I8mWs-< zw`VU_(phb9~`^YL3Q))g`>(p)gRx| z8xWfJu4FoX{lfBk%E2;RHoOzF(h<9?-?!6i%KFI2(ka8JqQzsnqJMj9TnyQGK1T zXzX3b+oj+z_6Bq3=C<_WNG^_4WgksFg=s zYe0nY!s`Pvic=;3=%%rgT@^l+lEw# z?x6dCTFmDh22~gasFCi{8~y+o&q*W`#NYtUIApNq{Y%6x#3`QOj^nP<;i~FG?flP_N;l%_Eca=wl(1{iSuSjg zi5LVo$@Cj^S|u?Wte%tNk044wLl|RByywRJvN9S=*^&f#y12};{|dcfNZO;D0w}WQ z)XR_}4s|^};$Nztp*}$`{|%i2PR*ibpT=~GI8v86C3%Y9EbmTwW3z)TJ~tOBw%!AW zhhNcX-E~aPxp#ee-^Xh6T$NvtlIj{K{i3hAn?@@w;Ahj^#m_?3(AHO-w}+3tpOe2YsA!RhjeIHAcW;%+AGILnj-3#;K}Ev{Mp&m`0B%6lrs9y7_a{c=XZw+k1VMVp(eFaxf=MJ~!?#vu>?9#CfvxKaC|4>DXX^~&JJu>-bbbbV#gdr!e z8#QY<>dwjXZco~$y0NNq>i76Bh9~JT(^|47Xgx7mcf@u{zoB@RYH5+4CakNS;Y=M+ z&Pob6%DP^#IGdfD1@}(gy~5Bu8cy9Lw61D7w?#e~#J`;B3YsqxUC);V8jO;bD=-gQha=Hs-#Pp2YWpRUw=;%c z!X}pgJ^)<04z48g)Sg>P;>1kgDrh8NT;{#{y;=Rd+pN_uHK5ha!dSW?rLnD#ifSO= zFSa3#(^tJhLS0e?XMr%kKdSg)BelsUNwQ2&^@`of^SU`<$>zS)gF*6nRb~E^Y|5+S z)0&>?Zqu5RNlX8Q(+F)Pn;GZt8@_EGY98pLDnX_}C11dime@Pn>-%a+2(%ZoLKy#-rYZZIrDS;8FMWXE@!pX&ZZDLMhz@!2?zP%2cuO zVqY67rLeMU*n*wn^Isz2!Gr3+l8UVEHV@U3HSm^~M* zx~JR!Xn?6~ER%b<(4?j zH2JYzp_o-tCM@!JzR$$yhR$mNHl2j#$6rt|ql-_-!?OcTbgc!tmu8E96|UFLEeb|n z(w&d$5#}C{yT}b3q{jNCJ@WOF?I%1HAXInGSt9lx-*FTWN%*BsvP$gT?|HB8qCn(n zKRMaA)#)0M`&SM;-A>Dw3yY$-0k=onGKFSO(cZ2`Bl|feqG|JQF96k{8xjV>E*Wle zTbpU%%PlgMfq2Ga_6dBWox+fi5CF8HH9_*UGhZLOt^)QQ*JBN`_xH^jiG?9J%pxwv zkI2<0Qt0fIXm))Afsu%qZh3mY(U(p1wtnY_qy)ROPzg_^_;=4LH8Lu6TJBh{Np+i* zOk9`tQ9^N7jAi$$oNirB<&%KFZXHH4%Td|_9~3%2gVJ_3@o@0hfUQr1>r^sV6r5Oh<5gUTLc6t|Qi(k5} zou|K5e0eLD?z@rjiP=9Vai@xGy*${YgL|+!mqb>bqgZBhDj4gtB~^4C^h%%4yq4UitSq&9GZrLxbxP&`W}v*7wI2%;$kn(MC6TyWwyHZyw8G+5&OS$}&~q#vlUNmLeie()XGC z{Q>6r>laO-rNadkM|FBKXFnSdJK@UGk+I&!d{Y$cp9^R%LXCxWY;Tzla%ML_hC*AD(zYL-|`duvVqAL-n(~4j1hpOoA;m`+1lcCr!nx*9W9dJeu+zGt&$%u(; zxy>adtU+GKX>((=#wVnM1xS)u2xO`-_n6y_8l+F-F_i2k9q&RDS?hk8dUGq#KO*l5 zJ#f5?JpBH-ebGhazUP8bqn+PiR8tLNe^gXRO}{{3zk=d%x8c9jDv5?4w);8!r&7AY zk_EXw(=~HVbv7yT%68xECnAgNDVIMHm&!Q&R(^XFKS8T^c)!>9zR+oCqMN4LDYl4= zZF}K6R2E4uA1mhMg36m0GNK{4ACFHXyq<1FKbAptd|#nNtG94`+-Q0xGtQYSPnTM~ zzVKefp7n_tX0npgwj7^nUu5(U+E|H;3GYX*By3 zo`wQvIR5aKfR}x{oSE82=mECM0u4I{z%P%1>-2q9Yg28n_`|>XkheLu)!+W^6S=1B zJeFAgJalN~kn2pSs`9MBYvDLlw1$<3d^d}^1D`LKoaj!cK~m{GwOh z>Qi$#H6LU~E)b9CP=&r0RGI?Mb}WinS(IieiN(HLC?QjR~35>z&{NfZ+E$ zF#Kf6r4sQ>amY(F7LB5BCg?g~ClI$r5Eg+09iUB&Yf;Z(j`k}m5>Ii+kJ9=S;e zJK2E)N0AObI?^Xwiu?=yPgXpVxg?Es6to2j_WAnM_~ScEuCdll;7KhhmZ#8lI~Jc zLRx90MMAnuq@){EN~949b&wjRBqaoC=@0|~B?JWNM(Vxi_ka1omtifK#hmk;bML*c zO*mG-gG8Pcd`Ae0nH_#vS>3$7j5TLVpU2Kq)No>RP{tPB?Yl_A_?1z}NmAjCkT^ye znFsM?EbefHR(H1C=`OBOIAhTYkZi}4PU@(+yj&Ft`Ekdu(tMNC2$$dc>X4_VGcfrEVqdC>UfS>9c2QsEj!xefO6g~U z&#NspDQ0_n+t}`l3(B4+n*|SoR0uFEW3APZaM@KK=?+cB;(4_fW@3GxlgRE~#xDwD zJ7f{1;^lX6sB|yFxq~lMbjvKr2YZQ~?ut%AZto-sJ;KORw&P}&Xr=8&>u|B^}>8}p6j@hn)>Ze*Gbux5AG_|#y_a|lVgPY+9{;x zCKiSriykH1fFFs`V?`*Wn?&^xVOddAQYO&fB+yyK2nQMbNxLBfv?VB zYQ$V-Y4MKAQ(gR_)m|L$Cx?`C) zOkJ4$0!gs&{d>F;tm)@tg#?2}>tT>rG2Dd~9S-e4zI%Z=DX1#?vx@&J_~ z_3Jmlba_acF-i{CtWQ?j{+%dw1vrJiJ~^MJLsbA^I(>+4Q#G)-DA>ex+CYhx^aY>p=VC?$5Pf`)wOJY$sftF^>idz9~* zpYY4$ZjuX$eOkHT4%O+~!M>gK>BRYPMpY&8N*Sv{`}d!wiv$%cSpwodc~B1KExuS)f%ziP$JW56s9I0CBu#Re;iWT#r>kuGQlZ!sPNwIEXF#30n71 zh@rg*1++uEXA)gnCq`fJ`F-tkRZMhSB?63$%(~jS8pTKYHroEEr$-mK%ovWJRw9!9 z#Urn`Vmh$Rrw0;|>L<&x*fSX|Sj<~6Wo-@Iw4C{Q`Br=OpSJ%dm8yFL`;mWb%Wwu& zj?f9`96c?)S;L>)tA=9(P7U0VBgK8__snR)+D>zAe@;z^tGUJZc}HX?<)gXPXrrP$ z+mMQzq!=9JGIo!D_au)qV63T?H|-K2X29hGHJv74kJ87v;cRo-VL`QZ<87QkADRW} zdIA9|>~KI$8miW@j}!9}`?15cI_g1S*y;2y%m_rRcD0e`Y7Hl+`YV|L5kwP2$bXzQ zq{=D#^W70J+vlQ9Wo8!ry2Sr6piRmD?hyaRjPyIU1f-Xk!~)*Oq?gWlFZnH{QYdOq zZ7v`Gc3k>ua*{G@KIilLc*y$uLES#K_aaVa?d1M}`?E$KcAm+mggrO=I!p0+b!{EH z-;?TA9|cUCbf4p)C@f|J{11{R+_00>VAVxq`>YCu3fSC^BY|8Li|N8tB@oC#2hIvRX# zG2aNv_+|C=y_nm6KHAZ!kx?QlwU$z-;a}x2gf%E)y{lO~Uzr~qj2VCMVRI;5S!S@Q zKJZy|=BDk_OcULM(9ksRrpjcHO}m2#hARUhp)@s1FcKcCUO@k`x^#pR&HaaOo3 z)h+asfVhpKh@qx7^)D%wk{yG|!5KZjm<`OpNiy7$Dek3EEsfJ1(7-S&72i?g3|!_luoi+oNV zW4mx-eiX1(TE?CzUbjmAs{5Sv{wa)z1{_2Y;7`Pn^?6^&m@M@BjFh_x#?;;n5)kHG zr(H3Caf+!jd57J}$w_?>x(o(zX^D~<1iDDJ0h_Fa*u0ZB&D(8+KyE(#;cA##wUBEO z&ABKk6lc`|d%;XVIcPrh>SODhi+uCKSEUX}ncp(J#sKE`(YA+r>Pi0Uhw!E?MEi(*PwO_)ARowIUjMz4DCnWmSp4M8>xcC$UcL2P1@H@lA+7yUcG)Z zsl8PnDB`wEp>SNl3I|sqw^`Y}F(qf7sXW;ra8rV56WIGeF;S${GS@}AG|NDd2cp96 zYfA6^a^)q%`&QLO0s-E<9)+rTv@6>=FuYg|Eo?B1-cDRrak8eUkzKCbB(}$CYcciS z3Ud<}+aMw~xbh>$0>Lp%P8RX5@!G3<#0?qo4#QWPZSr!+` z++2v4nWe^MJSn7$&awtImdSSG^5xXC0wFvg`{07{B=d%O+=qyKl*mRpHhM&+&<3lK zLB+I0`^@RxEjvybe}o(;;QynVdDCn~-FF3xyttVR%%|gtqsY`l^!_=e%}G z^*TG=!DaIQuUUC}E9^46*VWJnuBnkEt&M;%M9jfu&v9n}sh?st*|yGlr_F#v?|0bw z)>doQkMmEiz7{>pyk5&ywEQI&zJ=yeny-9sc4;)|cr5Xk1#^xw%BE2GUOB$^Y^##H z3yb60^-LKNuXVDZ#8cyrd8uTw1Y_AJs#Q7;xd}nJ(}}##n$st?87x>OcnW+P@Fl@x z%RG#~)h4GIxOEFNU0EUJ9R&J7k42~Pdhfrof2^Ux527b$_a5KS-bVq#$nX!rU_cP& zlLf9`ml^B%-M(P^SVI@NTEKvY0QnSC0X`FGEF;-^iVNr2yE8BHdz|#oKjH}^VC^oY zm3L;+Qqs3c`z}a&aCx^o)XoGy6Lh<}TZ;faU@RnM{6QfV=f=;evxVdw4_}O`q3UI7 ztq^Cq@GGsme->>&3^D{2a&vo(u1an0Q`=#)iwnj-$XKHqJxkco4>4qwadb~E*kO(k z#oh~vYkR*^+x-ZATU%JU&un^K0r82OmdK0YdxiC#vjFOwP2d=(EM?@r`_kj=*z?xr zn~%fJM%13&rSM=(KojX8{fR)ghN)>A<{K#LMzK*di^HOX3csbj6OD!=vd4xlL>%Lw zzmgyzCocO}kS0B41(PO&Dmg1?Ti|Xivihz%#^CP8&pX;-e~KGpJ}q3Kn@+EK7a%6l zMiNUbBC1_IDf8;u)bW5$nA-?RD^V9X1a6eDW_}}0AU4+3vSk+%W0DORgq?Vtpr^yDb6t*=oyGmaf!QM?jby`KnY2SFkc%a+GrGHW=Y~*Q;1OD2uxI!94{8YY zpMz}Eym7ae&rONT-FSN&Z>O>LiF{Pi&>(=o@PBRZM?h@5_dKpTgdlPo5<`n+>{9wp zg!hUFXDrQX-Lil~vR>KUqpva@YOXHoKuV>YL}hV5?UXr`R|8h~ zFK3x7$Nt%c*D^1tern3J5dw=ZMSOetTRE{ZJF-&fHaw{hQu{@o_lGY{(UnVMH4XG( zrc~zB_D-1P`hb$D~aW+um$D) zQgcFe;zwK3lk@x-JS`n zl*(TR2XVsT^@SpoFv|CNveRqwADg^;30?*mX7u2nw5dcWI5=?WLHDmTKJ`PBn$a|S zmGH84hPi&T^Fme8v$7^*6t^3phN^7vtMYzXnSFJIM=~-W(iz{bIIfJ_|I=~s*S0$* z5NW+`^zY{WGX-Ro$+lp z)GWbXxz*6s(>D(=3;zyYA6G@O>!yMAEgJI0#ED(`#-9Pq&S#^TpR3g72lQdsRs~#c~=xSD3e58&A9G~zAUl$%Z zh0g3`=2=w>1UuHWhw0C@v&&0Gvc&66JY+L3p2Oq(Z>GA4+&yA)eo@!Z#KHeEB z(R3jc&X(wvTO(60+2r}rLsjLuf;XRntnw`N)4#_ zb3q!$cK$p59l=!EY0CbC;YnG7%wO>zGzTwx`X2rqnThGU_PJSF`ob1Gs=w`!=CnMQ zQ^VzGH>H^|xGB4y48R%z%S}tzrT# z9D-MU?1#OHg#*`zC*q3l2JQE$<%Vy1r{_V99K zlh`CgPc<)P)96E}uXx^}!G-t(`*LauCWC|O$2&?Uu%L5s{!htzlbdwstuC+>5mt~2G$qESi>Bt_pWOY#!_~J7flw_j1E^9E zqI{eKJ9Czpb4sU80CY;Lea){VD<`GNBb={(sQ=>l--}7>;K8u7MP?2h_2SY8jbjBA zdHqNixl1-eT`8+S9@#7J3}kUK==A?_UY|BOFB(b7K%z3Z+W2d3iS`l2^;e9wBengu zBq$}vAjDVRtokFUbm05ge}XM5rjusmnJ^5#{v!hM1xT`vRo{)>lP9R&fR?|>3TwnR z*u>a4McdkEMasX&3!4K`HR5~q!or7l15&ECZ*B-F5?aE=Oc)gg-k-_GU$s7abBrpF zyYWUBsU+X0B_7Lw*g&`x=#Fge>z^ zG}7bodoSCx7j0KMx^gaJ`i%B>3Lmx36o*D}xz}C0tV?oNl{iO6n$oDC)iw^y{il3! z$nHf*LNau-x|+Fp?}7y%7d%#++}yaGas~6TNJ%(uM}6_=X7n3oaW>ow)>h~I3Za6Z z!FvOU^?kXtjo{upPG&^0AMtc31E3V;^EMl8iu>lsiz`@r${(ayeTm%gYx!jn4mJ2X z(|WI7IQ}I2Ts+3?>92ijmfO9l^lG?$uXoWm>C*iE&hXM3QD}AJ1aGe6T70LHUI)#6 z8Q&t%&76KKUX}>fuM!OH{jX8|N40aceh3cYSt`Y zb19ltJlDta^DljL%MBEaT2$VAyQ~1o1t+{So@O!3MIS?uMK_W~z__B-PNc?p3`b%$ zNpOLl$*YD#JzM-?+miusppvfS>U_f24ORqE955_he_Y@tHe{DgHJ7g(XH!K;y0X8^ z92Iq<>t2SSuv%|Md6-WC0i(qM!Y6%O!z(XibdYVn1eKSx{Jb7huc*$ded5vhan7>V zwYnaZ7O%7G z{{H>~c@0T$V#5-Vmf>Of5!IIbA+lfL*zbXM_ThJoOfk=e5^3Yb*G^Jfo%=v;}i&D(+TpzEBJ!b)oh5 zjc5)HJ#~j1?znX=Hh%sh`*?9c;QRbiD*}8^&jW9r2224&AwN%HL%!)O$yjHjXZqoT z9?8Ny!sWvLIj8Mt(1vN^XW(yJV>EpheN{oT~U#%Agg6ZrWi%-UnRYn zmN5ASBtVA+B2259p8Tk;JrFHa)>GQ#P`>$=Al|K1pkh)*M^_$T8a z$y8MTdgpw6VI$$j=HlVZSrC&y<=um8Vi)ZfSh(Y-k(%X?kEvJhd?za|z++*BcxpLJ zidFJGkGJQG31inR+up?1k?;0hs>fydDhox(J-f>6UTI7(?p6=WN}#-^h7x;TjQA=) zMKc=s0ng1vNq5NcfjNi%dB(e`UF8pRhJlO<1pNa88)HRRyFDRLqs$!2raUTGX&?C} zl5srFrhs2PrNgJuX3#eD50Ym~e*3jbrWsDxZ|T#Ss!Lr{UzRjFJou0O2pRGB(IQ?k z)N0o}AV>`E%<9H0dDnOcJg>ei`+r9grh|wOQ3aukg}*K<2(4+NX@^u@JFgGpzJ+z= zL62!VQNKT`2_s$5R#`|}Z>MmKtl6X=Z6|TXDyn~PJF^ms(Z++_;b#rM+{zs1Sy$*H zJ(Eiez7Jd9ZrJ7NF9<(_+zh=KUeIMz{UC<0P^>39u838y>#CQ3>)#P4$_J;AA2$6@ z-2y)=nqR6*Q)x`JG?AyGC}r=X&tKIynmXxYrL3WF_Vlkr zk>is66?X6`4F-&JHSLGzEZd$&I)75$v`x8wdJI1x@#yjOaH)dXnwHBgyyg$ZibzdI z*XK=v`snAK3R~;@us9@O$;#33Ao}O<{U>C89|m#Ow;H-6i9IJ}pF?qo??Q1Kc$ZfV@%H_*NG4h_@vY|F@cH zafd0ua8@J-?L=U+k&uwc>{5B?;*B~hR45(qS7MugyQGo!qPQqpv(h-a)^umP$*iu< zs3oE`>&xWa>WZUj)r(J<{hSO}Wp!!97ZU?fjTXu@qKo`U47&DoDX`C-PS!hGVwTB; z7hHxbN=do<+}2&PZpb~PE6tkwtB=lUK$2)Ta(bi7@K)kt%*}0b<=Z#P(?!ZS`%fZS zqTA=uX-eGNkWZd*mvFW;{n&cAp!v!tf|k}>SMDy_5-3#;p+Sf%^BR6J97Z{t^3drY zIlc~=0F34O!V?+`g_G(;f&$;SRQW_PE|$Kl(cJuTJcR2>GKbb-JNY(Q<6P1YHlNT{ z(XM!YEiKz<@L#%>DX|{Ij78br*&iq1?4pTUeK~N=^B8FoF_}WeT=(fvMMw-$(X_qL zr}nt>*$?58KZ+kh>Xew16BQU$S*%05UJEvDV>03V1OOErK+}44kqd8}zv4NPtET{1 z$pa=3tgcNULcY_m!C2>Hozo140-f&32yu=-U}S#;SV|ww7Dy3;p^@-IL3$pgj)oPT z4cA(pm)!aO7=$9;4g*Vg`ja>JgcfPTyXZjeD`YV$Cf|fj^gjO!#FZAm+HZCD^Xi1f zqf)cXrRzQoIt@+MU@qS!6!+^WYoL4A_$1*?$}7g2AWkC%s2p{@u|)vhK0EJjI0O~F zaAelu;nuBoTf&w27068sJL_fR>O|PqnWBc-Cnb70Z1k|m#P5^T_Da@iOf zoFk8}Z{V~ewxKH}lheZ@qh(V_#Dz~W0KL`#1MzY7^8D8&bn>L?@?CZ|+-DvDGhdVgl_jaGGv&@ch>h;Cru zKj>KzzTiZdg&d3nQbEyIAy3nIPhiR+D_S)z>TwSTPS|Gy;kc1m`|^9dN~Xuq8RKRV?OG(g$$*%fej0IPCvO9 zaB7{_J}ypgF@tk!QQizc=SgK|39H9fvu4d3t`|j#=I$*AgN+SGj9z;WLmFp%9RK=C z6knO#xkF1^HNu%GfB1dG^3iGGqzGr|Am!>2{f<;{Q{A0kF*#2#2~tEC6nO9<$`}=5Rj+-b@FWGLvc8$sFE1 zGbdHmMczy39q>-qSU8>?Ga3^t4}czW(QL&X@dclQ^~{ zuCkMKNw>7=*H{8(=FWhW;-qQwHHniZjvYI3yd<_PSu1x+BmvA|W&jZD-2c4q9Sot> z1Wn0=OrANT!C(O4&fMp|+w;CJ_ZK^!eEi8ByagU3d3( z_x1KX`Pk!Kz5RXNyy^rIXnz$wh*WuzK9Bd(u^E8TYjn|J))5UQvj%#W5aGcB4>}_gxaSqPmYvcXwBavHH z2bwwVOMQLYw|4dRJh5$i@1u`>p|`)MyJu^6_x7Hy?w+n*+`7BFx8up~hW_jC?*}A* zW!o1zIIjEmLT|};jXr(zP<+kN=<4J0hDmYl1X(*Ots9ZojY?~4wsoV@x>0F;Bktdl z9{9Dj+{GN%{ZaQ}a?cpK_3%?`CU&nM8n}8ie&vLGDXtwO>qg|YLvh$}n9JjB zj63kA^cx>o?eI2pJzKv(E2deYCWWnRmMASzT7AvV(h8hu@W1ZvZj{E4^{wEzFFeE@ zl-3VRE5-$%B6sN0MXJ!Lh#k{X$CMnImct1toRA_3(ox+y@u0!>N2Sg8U&D2B+~XhO zhQy7>#mn{GmrO?esomkE>{BGaDuxv?l8|7?Q@Bk_Y{(5ZQucJ-YvVmE-L~aguBC~4 zqG!8V2GACYm&?U{spoG)9B9tN18WnzBZ};r9S9}=)s^Lg zy5LtNk0QHO$)ypuCi*oosEK}+_%z~c#QmtW{=U`RN+;L#2sb&nKFLQ6;x%MXGREn| zsS}qWcy!UH;;3=pZnZH-%AU@9ZM-AW#(UR-Vcg&KID;sYyB9EwdwP068gJkFq@Uxq z{ciIS;o3>QRU^LQz{+eal8uFRA*4t?MRse%t&2W`4;!(FE&!5s!QY7cQL^!Y>%n{1 z{kz=wz;#nk`HiS2OM}w$1B@GS8zmd>yoT#+=05i!ZajWXcJQL~Q_UHn&EUg2AJOf-0GbG* z8V(wFdk>EHuGOGaKiRvrSeT_~7*~~QMC=6zUN0jZGBAAeApvX>2LgJ-v^$a@_WZxe0)A zhamVwYvUb~tI~MBFvcj<1pwn6+joRHuJ?Di#9jM%=38RwR!q zc|Z<}z8vq)3T};fRD8+&w~e?T6E}WvHMf%ExZ%HPSeu^DPGP>Y~RG-G=DS3LZo7!Gcw@iY^+ zgz-r%t_ujp-Mu}2^i)rfwMi1uNdPoSblw_#ILilfF@KJS$(@jc(=r%}7?W(s{V3UZ z-x}~#KmHMJL|&619cdAyF`K5~jR)6sNE3tLAVBwC)#J51-Uhe>qbGZ+Q5wG&V7$Gr z%g=F-Kf;YlYZIhHC#{+Q(HEVE(6PaXvb;abgKC|SLep{>VH`v{*Sz-3KcovG%jFBC zD6pvp*Gx+tis;oz0O%jU{Ro0Lo)068A=s9Pd+?{u zjnsB`VO$C@k3+ENBKElE|MQsYUUR+e{12)uWPlDfO$_2age7MF+dCic+x=g2zZS2A zpN9_`FwZu21FLuDr0Z)g!@;VeH9+=6s$VtVA+zziISe?N)U>!CrwcfNB7Ff#~Z)ARUV6gOv*>9}>1;fZ)$V4yGa@=M-6Ma5uz| zLPAL#kKMkl!21A% zP>9Y{M=pEQEDF~WE&HK~b=j|wfH95=SY z$Q3-_$d)msRZn&IHsDl03@ok$=}b#=q$N!R1S;$dxOwWsF!O9f{03nRf=*;G_9SJH z$p#48{oHu)zb2*}Bh`LPkor_TV&iWBd|GuW)lj4|AO=Bm_vtxINl9 zINthUeBWBm4fKy~%)5oIt+EM%7yssRn@ZMUW25*y!PtkB+iw6#JHpZ}R51*^3s|

@uTerWeFUVjgy%&-U>36}Ko1u?6=5YK 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 list = new ArrayList<>(); + for(int i = 0,j = 0;i < nums1.length && j < nums2.length;){ + if(nums1[i] > nums2[j]){ + j++; + }else if(nums1[i] < nums2[j]){ + i++; + }else{ + list.add(nums1[i]); + i++; + j++; + } + } + int[] res = new int[list.size()]; + for(int i = 0;i < list.size();i++){ + res[i] = list.get(i); + } + return res; + } +} +``` \ No newline at end of file diff --git a/src/posts/leetcode/linked-list-cycle.md b/src/posts/leetcode/linked-list-cycle.md new file mode 100644 index 0000000..f453743 --- /dev/null +++ b/src/posts/leetcode/linked-list-cycle.md @@ -0,0 +1,57 @@ +--- +date: 2023-11-7 +category: + - 链表 +tag: + - 双指针 +--- + +# 11.环形链表 + +给你一个链表的头节点 head ,判断链表中是否有环。 + +如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。注意:pos 不作为参数进行传递 。仅仅是为了标识链表的实际情况。 + +如果链表中存在环 ,则返回 true 。 否则,返回 false 。 + +![](image-4.png) + +``` +输入:head = [3,2,0,-4], pos = 1 +输出:true +解释:链表中有一个环,其尾部连接到第二个节点。 +``` + +## 思路 + +可以用快慢指针,快指针每次走两步,慢指针每次走一步,如果有环,就一定相遇。那终止条件是什么呢?因为快指针每次要往后移动两步,所以fast.next肯定不为null,同理fast也不能为null。 + +```java +class ListNode{ + int val; + ListNode next; + ListNode(){} + ListNode(int x){ + val = x; + next = null; + } +} + +class Solution{ + public boolean hasCycle(ListNode head){ + if(head == null){ + return false; + } + ListNode fast = head; + ListNode slow = head; + while(fast != null && fast.next != null){ + fast = fast.next.next; + slow = slow.next; + if(fast == slow){ + return true; + } + } + return false; + } +} +``` \ No newline at end of file diff --git a/src/posts/leetcode/path-sum.md b/src/posts/leetcode/path-sum.md new file mode 100644 index 0000000..a8b42e1 --- /dev/null +++ b/src/posts/leetcode/path-sum.md @@ -0,0 +1,69 @@ +--- +date: 2023-11-1 +category: + - 算法 + - 二叉树 +tag: + - 深度优先搜索 + - 回溯 +--- + +# 7.路径总和 + +给你二叉树的根节点 root 和一个表示目标和的整数 targetSum 。判断该树中是否存在 根节点到叶子节点 的路径,这条路径上所有节点值相加等于目标和 targetSum 。如果存在,返回 true ;否则,返回 false 。 + +叶子节点 是指没有子节点的节点。 + +![](image-2.png) + +``` +输入:root = [5,4,8,11,null,13,4,7,2,null,null,null,1], targetSum = 22 +输出:true +解释:等于目标和的根节点到叶节点路径如上图所示。 +``` +## 思路 + +要求**根节点到叶子节点**这条路径上的节点之和,等于目标和,所以需要判断当前的节点是否是根节点。每遍历一个节点,目标和就减去节点的值,遍历到根节点时,判断这个计数器是否为0。 + +```java +public class TreeNode{ + int val; + TreeNode left; + TreeNode right; + TreeNode(){} + TreeNode(int val){ + this.val = val; + } + TreeNode(int val,TreeNode left,TreeNode right){ + this.val = val; + this.left = left; + this.right = right; + } +} + +public class Solution{ + // 这个函数隐含着回溯的细节,因为是把targetSum作为参数整体传进去的 + // 函数结束后,targetSum的值并没有改变 + public boolean hasPathSum(TreeNode root,int targetSum){ + if(root == null){ + return false; + } + targetSum -= root.val; + if(root.left == null && root.right == null){ + return targetSum == 0; + } + + if(root.left != null){ + if(hasPathSum(root.left,targetSum)){ + return true; + } + } + if(root.right != null){ + if(hasPathSum(root.right,targetSum)){ + return true; + } + } + return false; + } +} +``` \ No newline at end of file diff --git a/src/posts/leetcode/word-search.md b/src/posts/leetcode/word-search.md new file mode 100644 index 0000000..87e2d59 --- /dev/null +++ b/src/posts/leetcode/word-search.md @@ -0,0 +1,63 @@ +--- +date: 2023-11-6 +category: + - 深度优先搜索 + - 二维矩阵 +tag: + - 中等 +--- + +# 10.单词搜索 + +给定一个 m x n 二维字符网格 board 和一个字符串单词 word 。如果 word 存在于网格中,返回 true ;否则,返回 false 。 + +单词必须按照字母顺序,通过相邻的单元格内的字母构成,其中“相邻”单元格是那些水平相邻或垂直相邻的单元格。同一个单元格内的字母不允许被重复使用。 + +![](image-3.png) + +```java +输入:board = [["A","B","C","E"],["S","F","C","S"],["A","D","E","E"]], word = "ABCCED" +输出:true +``` + +## 思路 + +题目要求有两点需要注意的,一是字母不允许被重复使用,所以可以定义一个boolean类型的数组,来标记二维数组中的某个元素是否被访问过。二是最后返回是否找到这个单词,可以定义一个boolean类型的数值来标记是否找到。 + +搜索方式可以使用深度优先搜索,一直搜,直到到头或者不满足条件再回溯,使用我们定义的boolean类型的数组来标记某个元素被访问过,回溯后,因为选择其他位置再次寻找,要再标记成未访问。 + +```java +class Solution{ + boolean find = false; + public boolean exist(char[][] board,String word){ + if(board == null || word == null){ + return false; + } + int m = board.length; + int n = board[0].length; + boolean visited[][] = new boolean[m][n]; + for(int i = 0;i < m;i++){ + for(int j = 0;j < n;j++){ + dfs(i,j,board,visited,word,0); + } + } + return find; + } + + void dfs(int i,int j,char[][] board,boolean[][]visited,String word,int pos){ + if(i < 0 || i >= board.length || j < 0 || j >= board[0].length || find || visited[i][j] || board[i][j] != word.charAt(pos)){ + return; + } + if(pos == word.length()-1){ + find = true; + return; + } + visited[i][j] = true; + dfs(i+1,j,board,visited,word,pos+1); + dfs(i-1,j,board,visited,word,pos+1); + dfs(i,j+1,board,visited,word,pos+1); + dfs(i,j-1,board,visited,word,pos+1); + visited[i][j] = false; + } +} +``` \ No newline at end of file diff --git a/src/posts/wangluo.md b/src/posts/wangluo.md index 764aa56..7b91360 100644 --- a/src/posts/wangluo.md +++ b/src/posts/wangluo.md @@ -3,8 +3,7 @@ date: 2023-10-10 category: - 计算机网络 tag: - - 面试 - - 分布式文件系统岗位 + - 分层模型 --- # TCP/IP四层模型 @@ -25,6 +24,18 @@ TCP/IP四层模型是计算机网络实际应用的模型。 应用数据从应用层传到传输层。 +#### HTTP协议和HTTPS的区别是什么 + +两个字:安全! + +如何保证安全的呢。一是SSL/TLS安全协议用来**加密**,二是向CA申请数字证书。 + +HTTP是超文本传输协议,在三次握手之后就直接传输数据,数据是以明文的形式传输,不安全,容易被被篡改,而HTTPS协议是引入了SSL/TLS安全协议,使得**报文能够加密传输**。在四次握手之后还要进行SSL/TLS的握手过程,才可进入加密报文传输。 + +并且HTTPS需要**向CA(证书权威机构)申请数字证书,来保证服务器的身份是可信的。** + +除此之外,默认端口也不一样,HTTP协议默认端口是80,HTTPS默认端口是443。 + ## 传输层 传输层为上层(也就是应用层)提供网络支持,该层有两个传输协议,用户数据报协议UDP、传输控制协议TCP。 @@ -33,10 +44,13 @@ TCP/IP四层模型是计算机网络实际应用的模型。 ## 网络层 因为网络之间的传输过程是错综复杂的,我们分层就是为了让每一层简单、高效。网络之间实际的传输功能是由网络层实现的,传输层只负责服务好应用,作为数据传输的媒介,帮助实现通信。 -网络层提供了IP协议,当传输数据+TCP头部传到网络层时,会加上一个IP头部传送给下一层。 +网络层提供了IP协议,实现主机与主机之间通信,也可以叫点对点的通信,当传输数据+TCP头部传到网络层时,会加上一个IP头部传送给下一层。 ## 网络接口层 提供了数据链路级别的功能,当传输数据+TCP头+IP头传输到网络接口层时,会在前后分别加上帧头和帧尾,封装成数据帧发送到网络上。 +该层的传输协议有点对点协议PPP(数据链路层),用来将网络层传输的数据包封装成帧。 + + \ No newline at end of file