Weekly LeetCode Challenge (Week 2): Contest

แชร์
ฝัง
  • เผยแพร่เมื่อ 9 พ.ย. 2024

ความคิดเห็น • 7

  • @notbalding
    @notbalding หลายเดือนก่อน +1

    You implementing a trie made me want to solve problem 208 (implement-trie-prefix-tree), ty for the motivation.

    • @alejandroill
      @alejandroill  หลายเดือนก่อน +2

      That’s so awesome haha, I hope you were able to solve it!! 😁 It was actually my first time implementing a trie too - I always knew the concept and what it’s used for, but never solved a problem using one until now 😂
      Let me know if there’s anything you would like to see from my videos that you would find useful!! I sincerely appreciate your comment 🥰

    • @notbalding
      @notbalding หลายเดือนก่อน +1

      @@alejandroill I was able to solve it but took longer than i've wanted to. (Silly brain moment)
      IMO you shouldnt really change anything. It's currently used to document your progress and your current format seems fine for it.

    • @alejandroill
      @alejandroill  หลายเดือนก่อน +2

      Hahaha that happens sometimes 😋 I can speak from experience… 😵‍💫
      And okok great to know, I’ll keep the videos coming at you then!! If I may ask, how long have you been solving Leetcode questions for, and what personally motivates you? Are you a student in college, or well into your career? I’d love to know 🥰

    • @notbalding
      @notbalding หลายเดือนก่อน +1

      @@alejandroill Currently studying a bachelor in CS (got an associates in programming). Mainly doing LC to prepare me for classes and I simply got bored of making regular projects. Also means this journey is getting halted once classes start again.
      For howlong: I've dabbled in it for 2-3 years but didn't take it serious, started to take it serious this year August.
      (Serious as looking up solutions to see where mine could improve or for when i couldn't solve it and learn from that.)
      Currently sitting on 461 solved (295 E, 155 M, 11 H), around 350 are Algo related and the rest is a mixture of DB and JS.
      Unfort that doesn't really reflect my skill since I'm still not comfortable solving questions around hard (or even intermediate) topics. (DP, Greedy, DAC, etc.)

    • @alejandroill
      @alejandroill  หลายเดือนก่อน +1

      Ay that's so cool!! 🤩 Are you taking an Advanced Algorithms class within the next few semesters?
      WOAAAAAAH ALMOST HALF A THOUSAND PROBLEMS HOLY HECK!!!!!!!!! THAT'S INSANEEEEE 😱 😱 😱
      And yeah the harder concepts can definitely seem scary to jump into, but in my opinion they're actually the simplest ones of all! It seems super counterintuitive, but for concepts like say Dynamic Programming, it's essentially brute force but caching results to enhance the overall asymptotic complexity (often from exponential to polynomial/pseudo-polynomial time). That's for top-down DP of course, where for variants like bottom-up you might have to think a bit more cleverly about how you build your n-dimensional array and things like that...
      In fact, the way I learned DP for the very first time and actually understood it super well was from this video alone: th-cam.com/video/OQ5jsbhAv_M/w-d-xo.htmlsi=6y2vsBNErpeVC86n. If you watch it in full, and you're any bit like me, you'll realize that it's a LOT LESS terrifying than what people make it seem out to be! And the same applies for the other concepts you mentioned like Greedy, Divide & Conquer, etc... It'll definitely help to take an Advanced Algorithm's course, but realize you actually already know how these concepts work! If you understand how binary search or merge sort works, you understand DAC! If you understand how Dijkstra's algorithm works, you understand Greedy! If you understand how to solve a problem like getting the n-th Fibonnaci number recursively and why caching breaks down the complexity from O(2^n) to O(n), you understand Top-Down DP! You already have experienced with each of these advanced concepts, and learning to apply them intuitively in the wild I think just takes a good amount of practice :) [Or so I hope, as otherwise what I'm doing will all be useless... 🫠]
      I'm not sure if you were seeking advice from your comment, but I figured I'd mention this all just in case since it comes straight out of my heart :) I remember being super scared about concepts like DP and P vs NP, until I'd watch a lecture by Erik Dermaine, and feel on top of the world. Having no clue what MSTs were about, how to implement Dijkstra's or even BFS/DFS iteratively, or learning about Union/Disjoint Sets, until watching a video by Abdul Bari. All the concepts seem tough and scary at first, but when you uncover them you realize the ideas behind them are actually very straight forward.
      And this still happens to me today! Just this morning I watched a short by Neetcode covering Topological Sort. I paused that short and just read the code, saw what he was doing with indegrees -- and now it FOREVER makes sense to me how to topologically sort any graph from now on (or detect that it is not possible). Whereas before today, if I ever encountered a topological sort problem, I'd likely resort to some online solution and not take the time to understand the implementation myself (just what it does).
      I'm definitely still trying to build good intuition, in just yesterday's video alone it took me 4 hours total to figure out how to write some piece of logic that only required 1 line of code in the end 😵‍💫 But I hope that with enough practice practice practice, solving at least one problem a day over the long term, I can learn to build that good intuition from the small base of knowledge that I have, and whenever I truly don't understand a concept - resort to resources online to learn them at a deep level so I can understand and remember them forever.
      I realize this is an extremely long reply, I hope that there's at least some utility to be gained out of it 😅 Thank you so much for sharing your Leetcode journey with me, maybe this encourages you to keep solving 1-3 problems per week even when classes start :) Otherwise I look forward to hearing from you until classes start, and thank you so much once again for taking the time to leave a comment on my channel, it really helps and means a lot 🥰 And best of luck with school, that always comes first!!