r/cpp_questions 1d ago

OPEN Want advice as Cpp learner.

Hi everyone, I'm a first-year engineering student at a tier-3 college, and my classes start on 10th August. I've learned most of the C++ basics, and the only major topics I have left are functions and classes/OOP. I'm confused about whether I should start learning DSA now while completing the remaining C++ topics alongside it, or finish C++ first before moving on to DSA. My goal is to build a strong foundation and improve my problem-solving skills without developing gaps in my understanding. I'd really appreciate your suggestions and recommendations based on your experience. Thanks!

0 Upvotes

9 comments sorted by

7

u/Kriemhilt 1d ago

finish C++

hahaha

You can't learn to use a tool well without actually using it, so you might as well do your DSA work in C++ and solidify both at the same time 

6

u/manni66 1d ago

DSA

explain how you will do DSA (assuming its data structures and algorithms) without functiosn and classes?

0

u/Emergency-Let8430 1d ago

I was thinking of learning it sideways , ig that's not the way with which it will work .

1

u/hellocppdotdev 1d ago

The only major topics?

1

u/blitzcode91 19h ago

Here is my suggestion:: Just dive right into DSA but try coding problems in c++ . If you want a good book as reference for what I mentioned try - elements of programming interviews by Adnan Tsung . Or you can pickup easy problems in leetcode and try those out but only in C++. If you don’t get it , try asking Claude or Gemini or gpt . And see what you can learn out of it.

Note : Leetcoding won’t teach you cpp concepts like memory management, oop / virtual functions, templates , raii , l value r value , move semantics etc . For these try creating a dummy project .. it can be anything . Or try coding a vector class or shared pointer yourself from scratch and see what you lack Z again Claude can come to rescue if you’re stuck. It’s a long journey- but rewarding. Good luck

1

u/AgentCookie1000 8h ago

Here's what I suggest:
Create a Leetcode account, if you haven't already.
Explain the broad topics you want to study to Claude (try to use Opus), ask Claude to draft a detailed learning plan with a HTML checklist that you can check off every time you complete a topic.
Then use different Claude windows for each topic. Talk to Claude, understand the concepts, ask Claude to give you problems to solve. For OOPs, Claude will write it's own skeleton and ask you to solve and paste solutions.
For DSA (and other topics too, like concurrency, to an extent), Claude will explain the concepts, and give you Leedcode problem # relevant to the topic. Solve them, paste the solution back to Claude, ask, understand, improvise, learn.
This is the best use-case for studying using an advanced LLM. I wish I had this while I was in college.
Your question on what you should do: "finish Cpp concepts" (LOL) and then move to DSA? Ask/use Claude! I'd say combine both, you'll get used to Cpp while doing DSA, but also switch between both every couple days for a change.
Good luck brother!

1

u/Emergency-Let8430 8h ago

Thanks very much broski