👏 Preuzmi → Beleške za vežbanje od BAT stručnjaka
Svi verovatno znate da u današnjim intervjuima za internet kompanije, kad god je u pitanju pozicija u razvoju, praktično nema bekstva od mučenja algoritamskim zadacima. Zato, dok se pripremate za kampus i otvorene prijave, ili u slobodno vreme, ipak treba da rešavate LeetCode zadatke i održavate formu.
Erge, prošle godine pre kampus prijava, dok sam se pripremao za algoritme, rešio sam mnogo zadataka na LeetCode-u, ali imam utisak da iako sam uradio mnogo zadataka, moja sposobnost rešavanja nije mnogo napredovala. Kako da rešim problem niske efikasnosti pri vežbanju?
Ovo je poruka koju mi je pre tri meseca poslao jedan čitalac; njegova dilema me je duboko pogodila! Zato sam se odmah raspitao kod prijatelja koji rade u velikim kompanijama, i oni su mi, potpuno nezavisno jedni od drugih, preporučili ove beleške za vežbanje.

Nakon što sam pažljivo proučavao beleške nedelju dana, osetio sam da sam otkrio blago! Odmah sam ih poslao tom čitaocu. Prekjuče mi je odgovorio: „Erge, prejak si, ove beleške zaista funkcionišu. Dva meseca sam savesno vežbao po metodi koju nude, i sa iznenađenjem otkrio da su mi se algoritamske sposobnosti poboljšale — pri rešavanju zadataka srednje težine na LeetCode-u više se uglavnom ne zaglavim!"
Kada sam to čuo, dobio sam samopouzdanje, pa sam požurio da podelim beleške sa čitaocima mog sajta.
Autor ovih beleški rešio je nekoliko stotina zadataka na LeetCode-u i pažljivo ih je razvrstao po kategorijama. Sadrže odgovore za sve zadatke sa LeetCode Online Judge, a sve implementacije koda su veoma elegantne i izuzetno efikasne pri izvršavanju.
Bilo da koristiš Java, C++ ili Go, možeš učiti iz njih; pogodne su za ponavljano učenje onih koji vežbaju. Ako pažljivo razmisliš o okvirnom načinu razmišljanja koji nude, uvidećeš da je ovo jedna od onih knjiga za vežbanje pisanih s puno truda. Beleške ukupno imaju 1200 strana i podeljene su na programske tehnike, linearne liste, niske, stekove i redove, stabla, sortiranje, pretragu, BFS, DFS, pohlepne algoritme, dinamičko programiranje itd.

Svako poglavlje prvo objašnjava okvirni način razmišljanja, a zatim bira desetak vrlo tipičnih zadataka sa LeetCode-a za praktičan prikaz. Ove beleške nisu samo lepo formatirane, već su i izuzetno bogate sadržajem — svaki zadatak je pažljivo objašnjen, ponekad uz slike, baš zato što se autor plašio da ih nećeš razumeti; zaista savesan rad!


I ja sam ranije mrzeo vežbanje zadataka; činilo mi se poput starih krutih školskih eseja — dugačko i ukrućeno. Ali internet kompanije vole da provere baš tako, jer zaista ne postoji bolja zamena. Zato, ako se ne pripremiš i ne vežbaš na LeetCode-u, na intervjuu ćeš sigurno pasti!
Čitaoci koji često vežbaju možda znaju da je Beats 100% veoma teško postići:
- Kod mora biti sažet i na meti
- Algoritam mora biti optimalno rešenje
Pa, rešenja svih zadataka u ovim beleškama dostižu Beats 100%, što je zaista retko i dragoceno! Drugim rečima, rešenja u beleškama predstavljaju standardne odgovore koje velike kompanije očekuju na proveri. Ako temeljno savladaš ove beleške, možeš da dominiraš na intervjuu — naravno, temeljno savladavanje je teško, ali ako ti pomogne da prođeš intervju, onda se isplatilo!
Autorska prava na beleške pripadaju originalnom autoru (halfrost / Frost); izvor: https://books.halfrost.com/leetcode/
