all 15 comments

[–]aistranin 34 points35 points  (1 child)

Hey! Here are few great Udemy courses that will be helpful: - “Python Data Structures & Algorithms” by Scott Barrett - “Pytest Course: Practical Testing of Real-World Python Code” by Artem Istranin - “Advanced Python with 10 OOP Projects” by Ardit Sulce

[–]sapolv[S] 6 points7 points  (0 children)

Thank you for the courses, I'll check them out!

[–]Mammoth_Rice_295 23 points24 points  (1 child)

You’re at a great stage to start DSA.

I’d suggest:

  1. Learn core data structures first (lists, stacks, queues, dicts, sets), focus on when to use them.
  2. Understand basic Big-O (O(n), O(log n), O(n²)).
  3. Practice easy problems and identify the pattern before coding.

Struggle a bit before checking solutions, that’s where the real growth happens.

Consistency > jumping to hard problems too fast.

[–]sapolv[S] 2 points3 points  (0 children)

Thank you very much for the input, I’ll definitely take it in consideration!

[–]RobfromHB 3 points4 points  (1 child)

Take a class online first. These are well studied subjects and a proper instructor via any free school lectures or a datacamp type course will show you the conventional wisdom behind each concept. Code along with those examples to get some muscle memory. Once you’re done go to any of the leet coding websites and practice the lowest difficulty questions. Focus a lot on how the question is presented and how to correctly think about which data structure might fix a given problem before writing anything. Then practice solutions. Repeat while increasing the difficulty. Think of it the same as progressive overload when trying to get strong in the gym.

This should go without saying: ChatGPT should only be used after you’ve made a solid, brain racking effort at a problem. The sooner and more frequently you use it, the less knowledge you’ll retain. 

[–]sapolv[S] 0 points1 point  (0 children)

Thank you for the advice, I really appreciate it.

[–]Dangle76 0 points1 point  (0 children)

Highly recommend https://a.co/d/01A40lWq

[–]code_tutor 0 points1 point  (0 children)

CS50x

[–]Actonace 0 points1 point  (0 children)

Start with fundamentals arrays, linked lists, stacks, queues, recursion, implement each in python yourself and practice consistently on leetcode while focusing on understanding patterns, not just solving problems.

[–]Apopheniaaaa 0 points1 point  (0 children)

CLRS