Moja droga do zostania rycerzem w LeetCode w 8 miesięcy podczas trzeciego semestru
Cześć, nazywam się Amit Maity i obecnie studiuję informatykę i inżynierię, teraz na 4. semestrze. Jako zapalona uczennica zawsze chciałam stawiać sobie wyzwania i przekraczać swoje granice. Podczas trzeciego semestru miałem okazję zdobyć upragnioną odznakę „Rycerza”, plasującą się w 5% najlepszych na świecie.
W tym poście na blogu z przyjemnością podzielę się moją 11-miesięczną podróżą w LeetCode, gdzie brałem udział w ponad 45 konkursach, doskonaliłem swoje umiejętności kodowania i wyciągnąłem cenne lekcje. Niezależnie od tego, czy jesteś początkującym, dopiero zaczynającym, czy też doświadczonym programistą, który chce przenieść swoje umiejętności na wyższy poziom, mam nadzieję, że moje doświadczenia zainspirują Cię i zmotywują do osiągnięcia Twoich celów. Więc zapnij pasy i dołącz do mnie w tej ekscytującej przygodzie w świecie kodowania! Będzie też kilka propozycji dla Was wszystkich
Przez ostatnie 11 miesięcy pilnie ćwiczyłem pytania na LeetCode i regularnie brałem udział w konkursach przez ostatnie 7-8 miesięcy. W tym czasie rozwiązałem X pytań (to nie ma znaczenia) i uzyskałem maksymalną ocenę 1940+ , co plasuje mnie w 3% najlepszych na świecie . A za umieszczenie 5% globalnie otrzymałem odznakę Rycerza w LeetCode.
Zdobycie odznak lub określonej oceny w LeetCode może wiązać się ze wzlotami i upadkami, ale ważne jest, aby skupić się na procesie uczenia się, a nie skupiać się na tych wskaźnikach. Ostatecznie te odznaki i oceny są tylko częścią szerszego obrazu sukcesu i nie definiują go wyłącznie.
Spójność jest kluczowa i można ją osiągnąć nawet w najbardziej nieoczekiwanych sytuacjach. Osobiście rozwiązywałem pytania LeetCode w pociągu lub autobusie, a nawet podczas oczekiwania na stacji. Za tymi małymi chwilami poświęcenia kryje się wiele historii. Raz przejechałem ponad 100+ km, żeby spotkać się ze znajomym, ale ze względu na konkurs LeetCode musiałem wrócić w ciągu zaledwie 3-4 godzin. Może się to wydawać krótką wizytą po przejechaniu tak ponad 200-kilometrowego dystansu, ale chciałem uszanować czas, który poświęciłem na zawody. To jedna z historii.
Niektóre doświadczenia dzielą się z wami wszystkimi:
1. Odblokowanie swojego potencjału poprzez wytrzymałość i wytrwałość:
Należy pamiętać, że każdy uczy się i robi postępy we własnym tempie i nie ma dobrych ani złych sposobów na osiągnięcie sukcesu. Na przykład osoba X może osiągnąć poziom ABC po przeprowadzeniu 10+ zawodów lub ćwiczeniu tylko przez trzy miesiące, podczas gdy osoba Y może przejść 50+ zawodów lub ponad rok ćwiczeń, aby osiągnąć ten sam poziom. Oba przypadki są równie fajne i nie ma powodu do paniki ani pośpiechu, aby osiągnąć swoje cele w określonych ramach czasowych. ⏰
Kluczem jest znalezienie własnego tempa i trzymanie się go. Niezależnie od tego, czy ćwiczysz codziennie, regularnie uczestniczysz w konkursach, czy łączysz jedno i drugie, skup się na stałym postępie i doskonaleniu, zamiast porównywać się z innymi lub odczuwać presję, by spełnić określone oczekiwania. Pamiętaj, że Twoja podróż jest wyjątkowa, a droga do sukcesu nie zawsze jest prosta. Podejmij wyzwania, pozostań zaangażowany, a co najważniejsze, ciesz się procesem uczenia się i rozwoju jako programista.
2. Rozwiązanie kopiowania i wklejania to skrót do niepowodzenia
Często zdarza się, że wyzwania związane z kodowaniem trwają dłużej, niż oczekiwano, i łatwo wpaść w frustrację, gdy rozwiązanie wydaje się poza zasięgiem. W takich chwilach kuszące jest szukanie wskazówek lub przeglądanie sekcji dyskusji w celu sprawdzenia, czy ktoś nie znalazł podobnego rozwiązania. Należy jednak pamiętać, że kopiowanie czyjegoś kodu nie jest rozwiązaniem.
Nawet jeśli czujesz, że rozumiesz podejście, kopiowanie kodu bez pełnego zrozumienia koncepcji jest skrótem do niepowodzenia. Nie tylko zagraża to Twojej uczciwości jako programiście, ale także utrudnia wzrost i rozwój. Zamiast tego zrób sobie przerwę i wróć do problemu ze świeżym spojrzeniem. Spróbuj podzielić to na mniejsze elementy i eksperymentuj z różnymi podejściami, aż znajdziesz rozwiązanie, które będzie dla Ciebie odpowiednie.
3. Nie traktuj ocen X jako sukcesu
Należy pamiętać, że oceny to nie koniec sukcesu. Twoje obecne oceny są tylko tymczasową miarą twoich postępów i nie powinny być jedynym celem twoich wysiłków. Zamiast tego nadaj priorytet procesowi rozwiązywania problemów i znajdowania kreatywnych rozwiązań dla wyzwań.
Pamiętaj, że oceny będą się zmieniać w zależności od konkursu i nie są stałe. Nie miej obsesji na punkcie swoich aktualnych ocen, ponieważ nie definiują one Twojej wartości jako programisty. Zamiast tego weź udział w procesie uczenia się, ciesz się wyzwaniem związanym z rozwiązywaniem problemów i pozwól, aby Twoja pasja do kodowania poprowadziła Cię do prawdziwego sukcesu.
4. Spadające oceny są w porządku, nie musisz się martwić
Spójrz na wykres mojej pozycji w stosunku do uczestników w ponad 45 konkursach
Jako programista często doświadczasz niepowodzeń w postaci spadających ocen, nawet jeśli konsekwentnie poprawiałeś się w poprzednich konkursach. Obserwowanie spadku w porównaniu z poprzednim konkursem może być przygnębiające, ale ważne jest, aby to zaakceptować i iść do przodu. Zamiast rozwodzić się nad wynikami z przeszłości, skup się na osiągniętym ogólnym wzroście. Jeśli zauważysz pozytywny trend w swoich ocenach w czasie, to jesteś na dobrej drodze. Wykorzystaj tę wiedzę, aby zmotywować się do kolejnych konkursów i odpowiednio się przygotować.
Pamiętaj, niepowodzenia są naturalną częścią procesu uczenia się i dają możliwości rozwoju i poprawy. Nie pozwól, aby spadek ocen zniechęcił Cię do rozwijania swojej pasji do kodowania. Bądź pozytywny, podejmuj wyzwania i dąż do swoich celów.
5. Spróbuj rozwiązać LeetCode POTD, ale nie biegaj za plakietką Miesięcznika
Jeśli rozwiązujesz tylko problem dnia LeetCode (POTD) dla miesięcznej odznaki, to nie zmierzasz we właściwym kierunku. Kiedy głównym celem jest zbieranie odznak, istnieje większa szansa na pójście na skróty, takie jak kopiowanie rozwiązań innych osób. Zamiast tego podejdź do POTD z nastawieniem, aby spróbować rozwiązać problem i dać z siebie wszystko. Ważne jest również, aby być ze sobą szczerym w kwestii swoich mocnych i słabych stron. Jeśli nie omówiłeś konkretnego tematu, a POTD jest z nim związany, możesz go pominąć i skupić się na obszarach, w których czujesz się bardziej komfortowo.
Jako osobisty przykład, zacząłem próbować POTD w pierwszym miesiącu, ale zajęło mi sześć miesięcy, aby rozwiązać wszystkie 30 problemów w ciągu jednego miesiąca.
6. Nie zaleca się wielokrotnego rozwiązywania tylko łatwych problemów.
Chociaż zdobycie pewności siebie poprzez rozwiązywanie łatwych problemów jest ważne, nie zaleca się polegania wyłącznie na nich. Zamiast tego potraktuj priorytetowo rozwiązywanie średnio trudnych i trudnych problemów, gdy już opanujesz podstawy. Takie podejście pomoże ci zbudować solidne podstawy, a jednocześnie stanowić wyzwanie dla rozwoju i doskonalenia umiejętności rozwiązywania problemów.
Nie mniej ważny,
7. Zakaz dyskusji i udostępniania kodów podczas Konkursu
Podczas konkursu ważne jest zachowanie uczciwości poprzez powstrzymanie się od omawiania jakichkolwiek pytań lub udzielania wskazówek związanych z tematem. Co więcej, kopiowanie i wklejanie rozwiązań podczas konkursu jest surowym naruszeniem zasad fair play i należy go za wszelką cenę unikać. Zamiast tego spróbuj samodzielnie rozwiązać problemy i rzuć sobie wyzwanie, aby poprawić swoje umiejętności w konkurencyjnym środowisku.
**Jeśli ćwiczysz uczciwie, Twoje oceny na pewno wkrótce się poprawią.
Joi ma durga
Czasami najlepiej jest zachować zwięzłość i skupić się na najważniejszych punktach. Myślę, że to za długo, podzielę się więcej doświadczeniami na innym blogu.
Dziękuję za poświęcenie czasu na przeczytanie tego bloga do tego momentu. Doceniam Twoją uwagę i mam nadzieję, że przedstawione informacje były dla Ciebie przydatne i pouczające.
Jeśli chcesz połączyć się ze mną za pośrednictwem mediów społecznościowych, nie krępuj się. Zawsze jestem tutaj, aby pomóc ci w każdy możliwy sposób. Niezależnie od tego, czy masz pytania, czy potrzebujesz wskazówek, nie wahaj się i daj mi znać, jak mogę pomóc.
https://www.linkedin.com/in/maityamit/
https://maityamit.github.io/maityamit-portfolio/
Jeśli dotarłeś aż tutaj, klaskaj :)