Hogyan lehet megoldani a Leetcode problémáit a technikai interjúk előkészítése érdekében

Isten, a Legjótékonyabb, a Kegyelmesebb

Tudomásul veszem, hogy sok cikk van erről a témáról, ezért megpróbálok értékes információkat adni, amelyeket bárcsak szereznék, amikor megkezdtem az utamat.

Fontos megjegyzés

Frissített oldal

Ha teljesen kezdő vagy, olvasd el először ezt.

A technikai interjúkra való felkészülés legfontosabb eleme a sok kódolási kihívás megoldása. Noha egyes techcégek felhagytak az algoritmusokkal kapcsolatos kérdések feltevésével, és inkább a területspecifikus ismereteket tesztelik, a legtöbb technológiai óriás (és még a kicsi is) továbbra is megköveteli a jelöltektől a kódolási kihívások megoldását. Sok mérnök csalódott ezen. A csalódás teljesen értelmetlen és energiapazarlás, amelyet produktívabb módszerekre lehet fordítani.

Hogyan lehet problémákat gyakorolni a Leetcode, a Hackerrank, a „Cracking the Coding Interview” vagy a GeeksforGeeks használatával

Ismerek olyan embereket, akik több mint 300 kódolási kihívást oldottak meg, és még mindig nem tudták elkészíteni az interjúkat. Láttam olyan embereket is, akik 5 Leetcode problémát oldottak meg. Amikor mélyre ások és diagnosztizálom a problémájukat, ez nagyon nyilvánvalóvá válik. Nem jól csinálják. Az alábbiakban bemutatjuk a mindenki számára jól működő stratégiát. Lehet, hogy egyesek más tanácsokat adnak neked, de ne hallgassanak rájuk. Csak tartsa be ezt a tanácsot. Ha túl sok tanácsot követ, eltéved.

Mielőtt bármilyen problémát megoldana, fontos, hogy kövesse nyomon az előrehaladást. Anélkül, hogy ezt megtennéd, nincs módod megtudni, milyen messzire jutottál. Készítsen magának egy előrehaladási táblázatot, amely tartalmazza például a problémát, amelyet megoldott, és hány percet szánt erre a problémára. Létrehozhat egy excel lapot, és ott tarthatja a haladást, vagy egyszerűen kinyomtathatja, és rendelkezik fizikai papírral. Használjon bármilyen működő módszert.

A legnehezebb az első néhány kérdésen túljutni. Emlékszem, amikor először kezdtem dolgozni a Leetcode-on, még az „Easy” szintű problémákat sem voltam képes megoldani. Elakadtam, és nem is tudtam rendesen használni egy darab hurokot! Miután túllépte az első kérdéseket, elkezd látni egy mintát. Minél több problémát old meg, annál jobban megtudja a tudatalatti elméd új problémák megoldását. Például 3 tömbprobléma megoldása után olyan általános stratégiákat fog észrevenni, mint a „csúszó ablak” és a „két mutató” technikák. Ha nem ismeri ezeket a technikákat, ez azt jelenti, hogy nem oldott meg elég tömb problémát.

Cél

Az emberek által feltett két gyakori kérdés: „Hány problémát kell megoldanom?” és „Mennyi időt töltsek?”. Gondolkodnia kell mind a minőségen, mind a mennyiségen. Ha a problémák teljes száma méri a mennyiséget, oldjon meg legalább 40 problémát . Ha az órák teljes száma méri a minőséget, töltsön 20 órát .

Annak érdekében, hogy készen álljon interjúra, a haladási lapjának összesen legalább 40 problémának és 20 mély fókuszórának kell lennie. Ha bármi kevesebb van , valószínűleg még nem áll készen az interjúra.

Bár a 20 óra kevésnek tűnik, meg fog lepődni azon, hogy mekkora haladást ért el ezekben az órákban. Ezek nem a szokásos 20 sekély fókusz órád. Ez 20 mély fókusz óra. A legtöbb ember nem képes mélyen összpontosítani napi 4 óránál tovább. Valószínűleg 2 óra mély tanulmányi idő után lemerül. Nagyon ajánlom, hogy ossza el a 20 órát 4–8 héten belül (lehetőleg többet, ha van ideje). Adjon az agynak pihenőidőt. Aludj jól. Ne töltsön napi 2 óránál többet ezeknek a problémáknak a megoldására. Ez nem verseny.

Ne felejtsen el reális és elérhető célokat kitűzni. Ne tűzzen ki olyan célokat, amelyek felett nincs ellenőrzése. Ahelyett, hogy azt mondaná, hogy „3 hónap alatt három állásajánlatot kapok nagy cégektől”, mondja azt, hogy „megoldok x problémákat, és összesen y mély fókuszórákat töltök a következő z hónapok ”. Ezt 100% -ban te irányíthatod. De nem áll módjában ellenőrizni, hogy megkapja-e az állásajánlatot az álomcégtől.

A stratégia

Megjegyzések

2. Nem számít, honnan veszed a problémát. Lehet a Leetcode, a Cracking the Coding Interview , a Hackerrank vagy bárhol másutt.

4. Ne rohanjon a megoldás felé, még akkor sem, ha úgy gondolja, hogy a probléma megállapítása egyszerű. Tegyen fel magának fontos kérdéseket, mintha kérdezőjét kérdezné. Válaszoljon ezekre a kérdésekre úgy, mintha maga lenne a kérdező. Próbáld megsúgni ezeket a kérdéseket és válaszokat. Ne félj attól, hogy beszélsz magaddal. Ha 5 perc elteltével sem tudja megérteni a problémamegállapítást, próbálkozzon a hátralévő idővel való megértésével (használja fel a hátralévő 20 percet a problémamegállapodás megértéséhez ahelyett, hogy aggódna a megoldása miatt).

5. Ha feltételezzük, hogy megértette a probléma megállapítását, gondolkodjon mélyen és próbáljon megoldást találni, mielőtt az időzítő megszólal. Ha egy brutális erő megoldása azonnal megjelenik, gondoljon egy optimálisabb megoldásra. Ne keresse meg a megoldást . Ez a legkritikusabb lépés. Még akkor is, ha abszolút elakad, és 100% -ban tudja, hogy semmilyen módon nem tud előállni a megoldással, mégis adjon magának 20 perc osztatlan mély figyelmet. Csak töprengj. Bármit megtesz, hogy ketyegjen az agyad. Ha csak a nyers erő áll rendelkezésedre, kódold be.

6. Ha a Cracking the Coding Interview könyvet használja, egyes kérdésekre több megoldás is lehet. Olvassa el mindet, és hasonlítsa össze a tiéddel. Ha Leetcode-ot használ, nézze meg a vita oldalt, és tekintse meg a legmagasabb értékelésű megoldásokat. Ha egyáltalán nem tudott előállni a megoldással, ne aggódjon. Próbáld meg minél jobban megérteni a megoldást. Kódolja, ha van ideje.

7. Miután összesen 30–35 percet elért a problémán, ne folytassa a probléma megoldását – még akkor sem, ha éppen a megoldás megértésének közepén jár. Csak állj le .

A gúnyos interjúkról

Az álinterjúk nagyon hasznosak arra, hogy felkészüljenek az interjúkra. Azt hiszem azonban, hogy ezeket túlértékelik.

Az álinterjúk olyan előkészítő interjúk, amelyek a fehérje turmixokat jelentik a testépítésben. Mindenképpen segít a több fehérje fogyasztásában, de a legtöbb eredmény a kalóriák csökkentéséből és a súlyemelésből származik. A Leetcode vagy a CTCI problémák megoldására kell koncentrálnia.

Próbáljon ki és használjon olyan online alkalmazásokat és / vagy személyes programokat, amelyek úgy gondolják, hogy megérik az Ön idejét és pénzét. Nem hiszem, hogy feltétlenül szükséges. Rengeteg embert láttam a technikai interjúkban anélkül, hogy pusztán interjúkat készítettek volna, egyszerűen ennek a stratégiának a felhasználásával.

A tanulmányi csoportok is hatékonyak lehetnek. Ha vannak barátai, akik szintén interjúkra készülnek, próbálkozzon hetente, és gúnyolódjon egymással. Szereld fel úgy, ahogy akarod. Segít tanulni valakivel, aki ugyanazon a hajón van.

Jó szórakozást tanulni. Sok szerencsét kívánok!