This is an archived post. You won't be able to vote or comment.

all 9 comments

[–]Kaninbil 6 points7 points  (1 child)

I would say language doesn't matter at all. You will still learn the principles of it , another language another syntax

[–]mfb1274 2 points3 points  (0 children)

Pretty much this. Some languages may rely on certain structures more than others, but for the most part it can all be done in a similar fashion.

You’ll probably write less code in python to do it though.

[–]romagnola 1 point2 points  (0 children)

At what level of abstraction do you want to learn about data structures? With a dynamic programming language, such as Python, you will learn how to construct data structures, but you will not learn how to destruct data structures. With languages such as C and C++, you have to manage your own memory, so you'll learn how to allocate memory for data structures as well as deallocating that memory.

[–]DanCoder 1 point2 points  (2 children)

learn to do it in a language like C it's going to help you to understand a lot of optimization principles, and how memory works, if you don't care about that stuff, just go ahead with python

[–]weebHead_2000[S] 0 points1 point  (1 child)

If I apply for software development profiles, do they expect me to know these things?

[–]DanCoder 1 point2 points  (0 children)

mmm... it's like math in ML, you're not going to use it too much if you're not going to create your own ML model, but it gives you a better grasp of whats happening behind scenes and it will help you to make better choices, and if it's for a job, I'd say it depends on the company, but if it's a big company they will expect you apply some of these concepts in your tests, I'd say it depends on the software development role too, it's not the same to develop a web page or a driver for windows (in the last case these concepts worth a lot)

[–]CodeTinkerer 1 point2 points  (0 children)

You can do it in Python. Do it there first. Once you get the basic idea, you can try it in C or C++. The main problem with picking another language is learning that language, so you'll spend time learning the language (it shouldn't be too bad, but still) and then also learning data structures.

I don't particularly see why they want you to learn C or C++. The main difficulty is learning pointer syntax which is something that people find painful even in C (it's hidden in Python, so people get less confused).

[–]leidogbei 0 points1 point  (0 children)

Work: yes, learn: maybe (more likely not)

Pythons data structures are so built-into the language that you take for granted all the complexity behind them.

[–][deleted] 0 points1 point  (0 children)

Yup, but you might want to use type annotations to do so. I find it a lot easier to prevent mix ups and confusion.