ebook img

Cracking the Coding Interview: 189 Programming Questions and Solutions PDF

687 Pages·2015·53.81 MB·english
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Cracking the Coding Interview: 189 Programming Questions and Solutions

CRACKING ��the� �· CODIINNTGE RVIEW 189P ROGRAMMINQ!JGE STION&S SOLUTIONS CRACKING the CODIINNTGE RVIEW 6TEHD ITION ALsoB YG AYLEL AAKMANMNc DowELL PM (RACKTIHNEG INTERVIEW HoTwO L ANDA PRODUCMTA NAGEJRo BI NT ECHNOLOGY CRACKTIHNTEGE CCHA REER INSIADDEVRI OCNEL ANDIANJ GO BAT GOOGLMEI,C ROSOAFPTLP,E O,R A NYT OPT ECCHO MPANY CRACKING the CODIINNTGE RVIEW 6tEhd ition 18P9r ograQmumeisntagin oSdno sl utions GAYLLEA AKMANMNC DOWELL FoundaenrdC EOC,a reerCup.com CareerLCLuCp , PalAol tCoA, CRACKINTGH EC ODINIGN TERVIESWI,XT HE DITION Copyr©i 2g0h1tb5 yC areerCup. Alrli grhetsse rNvope adro.tft hbioso mka yb er eprodiunac nefydo rbmya neyl ectorrmo en­ic chanmiecaanilsn ,c luidnifnogr msattoiraoanngrd ee trieval systemsi,nw rwiittihnogu t permission frotmh aeu thoorpr u bliesxhceebrpya,t r eviwehwoe rm qauyob treip eafs siangar e esv iew. PublisbhyCe adr eerLCLuCPp,a, l Alot oC,A .C ompiFlee1bd0 2,0 16. Fomro rien formcaotnitosanuc,pt p [email protected]. 978-0-9847(8I2S8B1-N35 )-7 FoDra vainsTd o bin, anadl tlht eh itnhgbasrt i unjsgo iynl ife. Introduction Introdu.c.t.io.n. . . . . . . . . . . •. .·. .• ... .• .·. .· .•. .• · 2· • · · · · · · · · · · · · · · · · · I. TheI ntervPireowc e.s.s . . . . .............. . . .·.. ..·. ·. ... ·. .·. · · · · · · · 4 Why.?. .·.. . .............................·.·.·.·4.· . ................ HoQwu estairSoeen lse .c.t.e.d. .......................6. ................. ItA'lRsle la.t i.v .e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 FrequAesnkQteuldey s t.i.o.n.s. .......................7. ................. II.B ehintdh eS cen.e.s . . . . .......... . . . . . . . . . . . . . . . .8 . . . . . . . . . . . . • . . . . . ThMei crtIo nstoef.r.v.i.e.w. ..............................9. ............ ThAem azIonnt e.r.v.i.e.w. ...,. ... ... .. . . . . . . . .1 0. . . . . . . . . . . . . . . . . . . . . . ThGeo oIglnet e.r.v.i.e.w. .......................1..0. ................. ThAep pIlnet e.r.v.i.e.w. ........................1.1. .................. ThFea ceI bnotoe.kr v.i e.w . . . . . . . . . . . . . .1 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ThPea laInnttier.r. v.i.e..w.. ........................1.3. ................ IllS.p ecSiiatlu at.i.on.s. . . . . . . . . . . . . . . . . . . . . . .1.5 . . . . . . . . . . . . . . . . . . . . . . ExperCiaenndcie.dd a .t e.s .. . . . . . . . . . . . . 1.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TestaenSrdDs E .T.s. ............................1.5. ................... Prod(uacPntrd o gMraanma)g e.m.e.n.t. ...................1.6. ............. DeLve aadnM da nag.e r.s .. . . . . . . . . . . . . . 1.7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Star.t u.p .s . . . . . . . . . . . . . . . . . 1.8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AcquiasniAdtc iqounis.h .i.r.e.s. .....................1.9. ................ FoIrn ter.v.i.e.w.e.r.s. ........................2.1. ................... IV.B efotrheeI nterv.i.ew. . . . . . . . . . . . . . . . . . . . . . .26. . . . . . . . . . . . . . . . . . . . . . GetttihRneig gE hxtp er.i.e.n.c.e. .....................2.6. ................ WritaGi rnegRa ets u.m .e . . . . . . . . . . . . . . .2 7. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PrepaMraa.pt. i.o.n. ...........................3.0. ................... V. BehavioQruaels tio.n.s ...... . . . . . . . . • . . . . . . . . . .32. . . . . • . . . • . . . • . . . . . InterviewG rP.ir.de. p.a.r.a.t.i.o.n. .................3.2. ................ KnowYourTPercoh.jn.ei.cc.ta.sl. .....................3.3. ................ RespotnoBd eivhniago Qruaels .t.i.o.n.s. ..................3.4. .............. Sot,em leal b oyuotu r.s e.l f.. .. .. . . . . . . . . . . . 3.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . VI.B giO ............................................3.8.. .......... AnA nal.o g.y . . . . . . . . . . . . . . . . . 3.8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TimCeo mpl.e.x.i.t.y. ..........................3.8. ................... SpaCcoem pl.e x.i t.y .. . . . . . . . . . . . . . .4 0. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DrotphC eo ns.t.a.n.t.s. .........................4.1. .................. DrotphN eo n-DoTmeirn.ma.sn. t. ......................4.2. ............... VI CractkhiCeno gd iInngt er6vtiEhed wi,t ion Introduction MultiA-lPgaorrtAi dtvdh.s mM su:l t.i.p.l.y. ..............................4 .2. . AmortTiizm.ee.d . .....................................·.. ... .. .4 3. . . . . LoNgR unti.m.e.s. .............................................4.4. .. Recursiv.e. .R.u..n.t..i.m.e.s. ...................................4.4. . ExampalnEedxs e r.c.i.s.e.s. ..................................4.5. ...... VIIT.e chniQcuaels ti.on.s. . . . . . . . . . .. ............. .. .. .. .. .. . .60. . . . . . . . Howt oP rep.a r.e . . . . . . . . . . . . . . . . .6 .0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . WhaYto Nue eTdoK no.w .. . . . . . . . . . . . . . . . 6.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . WakliTnrhgo uagP hr ob.l e.m . . . . . . . . . . . . . . 6.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . Opti&mS iozlTeve ec hn#i1Lq:ou oefk o r .B.U.D. ...........................6...7 Opti&mS iozleTv eec hn#i2q:u( DeDo II YtYo ulr)f.s .e........................6.9. .. Opti&mS iozleTv eec hn#i3Sq:iu mep alniGdfe yn er.a.l.i.z.e. ...............7.1. .... Opti&mS iozlTeve ec hn#i4q:u CeB aeasa sneBd u .i.ld. ....................7.1. ..... Opti&mS iozleTv eec hn#i5q:u SeDt artuaBc rtauirne.s t.o .r m. . . . . . .7 2. . . . . . . . . . . . . . . . BeCsotn ceiRvuanbt(lBieCm. Re.) . .................................7..2. .... HandIlnicnogAr nrsewc.et r .s . . . . . . . . . . . . . . 7.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . WheYno uH'evaear Q ude stBieofno. r .e .. . . . . . . . . . . .7 6. . . . . . . . . . . . . . . . . . . . . . . . Teh" PerLfaencgtuf"ao Igrne t esr v.i e.w . . . . . . . . . . . 7.6 . . . . . . . . . . . . . . . . . . . . . . . . . WhaGto oCdo diLnogoL kis.k e. . . . . . . . . . . . . . .7 .7 . . . . . . . . . . . . . . . . . . . . . . . . . . . DonG'itvU ep. !. ...........................................8.1. ....... VIII. Thaen dBO effyeorn. d. . . . . . . . . . . .. .. .. .. ...............8.2. . . . . . . . . . Handlinagn RdOjee fcfte.ir o.sn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 EvalutahtOeife .nfr g. . . . . . . . . . . . . . . . . 8.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Negot.i a.t i.o n. . . . . . . . . . . . . . . . .8 .4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ont hJeo .b . . . . . . . . . . . . . . . . . . . 8.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IX.Interview Qu.e.st.i.on.s. . ..................... . . . . . . . .8.7 . . . . . . . . . . DatSat ructu.r.e.s . • . . . . .................. . . . . . . . .8.8 . . . . . . . . . . . . . . Chap1tI Ae rrr aanySdst ri.n .g s. . . . . . . . . . . . . .8 .8 . . . . . . . . . . . . . . . . . . . . . . . . . . . Hash T..a.b.l.e.s. ...............................................8.8. ... Array&RL eissti zAarbrla..ey. s. .........................................8.9. . String.B.u.i.l.d.e..r.. ...............................8.9. ............... Chap2tI Le irn Lkiesd.t .s .. . . . . . . . . . . . . . . 9.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CreaatL iinnLgki. es.dt. .......................................9..2.. . ..... DeleatN iondgfre o ma S inLgilnykL ei..ds t. .....................9.3. ............. Teh" Runner"T.e.c.hn..i..q..u.e. ...................................9.3. .. RecuPrrsoibv..le.e .m.s. ..........................9.3. .................... CrackingTheCod\6i tnEhgd linttieoVrnIvI i ew.com Introduction Chapt3e Srt acaknsdQ ueue.s .. . . . . . . . . . . . . . . . . 9.6 . . . . . . . . . . . . . . . . . . . . . . . . J ImplemeanS ttio..nc.gk. ............................................9.6. .. ImplemeanQ tuien.u.ge. .....................................9.7. ......... Chapt4e Tr\r eaensdG rap.h.s. .........................................1.0 0 TypoefTs r e.e.s. .............................................1.0.0. ..... BinaTrryeT er ave.r .s a.l .. . . . . . . . . . . . . . . . . 1.0 3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . BinaHreya( pMsi n-HaenaMdpo sx -He.a.p.s.). ....................1.0.3. ........ Tri(ePsr Treefeis.x ) .. . . . . . . . . . . . . . . . . . . .1 .0 5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Grap..h.s.. ...............................................1..0 .5. ..... GraSpeha r.c.h. ..........................................1.0 .7. ........ ConcepatnsdA lgori.t.h.m.s. .............................1.1.2. ...... Chapt5e Br\iM ta nipul.a.t.i.o.n. ...................................1.1.2. . BiMta nipulBayHt ain.od n . . . . . . . . . . . . . . . . . .1 1.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . BiFta catnsTd r i..c.k.s. .........................................1.1.2. .... TwoC'so mpleamneNdne tg atNiuvmeb .e.r.s. ................................1.1 3 ArithvmseL.to igciR ciagSlhh ti.. f.t. ....................�.. .... ............. 113 CommoBniTa ts kGse:t tainnSdge tt.i .n g. . . . . . . . . . . . . .1 1.4 . . . . . . . . . . . . . . . . . . . . . . Chapt6e Mr\a tahn dL ogPiucz z.l.e.s. ................................1.1.7. .. PriNmuem be.r .s . . . . . . . . . . . . . . . . . . . .1 1.7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Proba.b i.l i.t .y . . . . . . . . . . . . . . . . . . .1 1.9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . StaTratl k.i .n g. . . . . . . . . . . . . . . . . . . . .1 2.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DeveRluolpae nsPd a tt.e.rn.s. ..................................1.2.1. ...... WorCsotsS eh ift.i n.g . . . . . . . . . . . . . . . . . . 1.2 .2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AlgorAiptphrmo a.c h.e .s . . . . . . . . . . . . . . . . .1 2.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chapt7e Or\b ject-OrDieesni.tge.nd. .............................1.2.5. ..... Howt Aop pro.a c.h .. . . . . . . . . . . . . . . . . . .1 2.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DesiPgant t.e rn.s . . . . . . . . . . . . . . . . . . . . 1.2 6. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chapt8e Rr\e curasnidoD ny namic Prog.r.a.m.m.i.n.g.. ................1.3.0. ... Howt oA ppro.a c.h .. . . . . . . . . . . . . . . . . . . 3.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 RecurvssIi.tv eer Saotliuvte.i .o n.s . . . . . . . . . . . . . . .3 .1 . . . . . . . . . . . . . . . . . . . . . . . . . 1 DynamPirco gram&mM ienmgo iz.o.t.i..o.n. ............................1.3.1. . Chapt9e SrIy stDeems iagnndS calab.i.l.i.t.y. ...........................1.3.7. . HandltihQneug e st.i.o.n.s. ...........................................1.3 7 DesiSgtne:p-S -tBey.p. .................................1.3.8. ............. AlgoritthhaSmtcs aS ltee:p -B.y.-.S.t.e..p.. ..............................1.3.9 KeCyo nce..p.t.s. .................................................1.4.0. V1I1 CractkhiCeno gd iInngt er6vtiEhed wi,t ion Introduction Consid.e.r.a..t.i.o.n..s. ...........................1.4.2. .............. Theinrso"e p ersfyes.ct..t.e".m. .....................................1.4.3. .. ExamPprloeb.. l.e..m. ........................................1.4.3. ..... Chapt1e0jrS ortainndSg e arc.h.i.ng. ...................................1.4.6 CommSoonr ting. A.l .g o. r.i .t h.m .s . . . . . . . . . . 1.4 6. . . . . . . . . . . . . . . . . . . . . . . . . . . SearAclhgionrg..i .t..h..m..s. •.............................1.4.9. ........ Chapt1e1IrT est.i.n.g. .............................................1.5.2 WhatthI en terIvLsio eowkFeio.rnr g. . . . . . . . . . . . . . . 1.5 2. . . . . . . . . . . . . . . . . . . . . . . . TesatR ienWagol r Olbdj. e .c t. . . . . . . . . . . . . . . . .1 5.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . TesatP iineogScf oe ft w.a r. e. . . . . . . . . . . . . . . . .1 5.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . TesatF iunngc. t..i.o..n. ........................................1.5.5. ... TroubleQsuheoso.t.ti.io.nn.g.s. ...............................1..5..6. .... KnowledBgaes e.d. .•.............•....................1.5.8........ Chapter12ICa.n.d.C.+.+. ......................................1.5.8. . ClaasnsIden sh er.i .t a.n .c e. .. . . . . . . . . . . . . . 1.5 .8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . ConstarnuDdce tsotrr.s.u. c.t..o.rs. ........................1.5.9. ........... VirFtuunacl.t i. o.n .s . . . . . . . . . . . . . . . . . 1.5 9. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Virtual. D.e .s t. r.u .c t.o .r . . . . . . . . . . . . .1 6.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DefVaaull.ut e .s .. . . . . . . . . . . . . . . . . . . .1 6.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . OperOavteorrl .o a.d .i n. g.. . . . . . . . . . . . . . . .1 6.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PoinatnReder fesr e.n .c e. s. . . . . . . . . . . . . . . . 1.6 .2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . Temp.l..a.t.e.s.. ................................1..6.3. ............... Chapt1e3IrJ a.v.a. .................................................1.6 5 HotwAo p pro. a.c .h .. . . . . . . . . . . . . . . . . .1 6.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . OverlvosOa.vd eirnrg..i .d.i.n..g. ........................1.6.5. ............ CollFercatmieo.wn..o ..r..k. ............................1.6.6. ............ Chapt1e4jr D atab.a.s.e.s ..........................................16.9. . SQSLy natnaVdxa ri.a..t.i.o.n..s. ........................1.6.9. ............ Denormva.sNl oirzmeadDla itzae.b.da. s..e.s. ...................1.6.9. ......... SQSLt ate.m e. n.t .s .. . . . . . . . . . . . . . . . . 1.6 9. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SmaDlalt aDbeass.i.e.g .n. ......................................1.7.1. .... LorDgaet aDbeass..ie.g .n. ..............................1.7.2. ............ Chpate1r5jT hreaandLdso c.k.s. ............................1.7.4 .......... TrheaiJdnas . v.a. .................................................1.7.4. SynchroannLidoz ca.ks t. i .o n. . . . . . . . . . . . . . . .1 7.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . DeadlaonDcdek asd Plroecvke. .n.t..i.o.n. ....................1.7.9. .......... CrackingTheCodiIn6 gtElhdn itteirovIniX e w.com

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.