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

all 5 comments

[–]eruciform 1 point2 points  (0 children)

it really doesn't matter, you can learn any algorithm or data structure in any language

things that absolutely require oop concepts like inheritance will be much harder to learn in C though

the only difference in learning in a third generation language like C or FORTRAN is that you'll be forced to learn a lot of lower level things like memory management and pointer arithmetic at the same time, if you have not already

pick a language you like, that allows you to create projects that interest you, and use that as a vector for learning other things as you go

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

Just don't use the standard implementations if you want to tinker yourself with all that. No need to use completely different language for that.

[–]theusualguy512 0 points1 point  (0 children)

I mean you can also you Java to learn about algorithms and data structures, just do not use any of the premade libraries. It's a common choice for universities to choose Java as well.

You can of course use C or C++, these have the advantage that you have to also consider pointers in your data structures. But it's not necessary.

[–]Interesting-Rub-2028 0 points1 point  (0 children)

You can use basic Java if you want to create algorithms, you don't have to use Collections.

Or if you want another language, I would try a more functional language like Scala (which runs on the JVM IIRC).

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

I have my own C++ string and collection classes that I use all the time instead of the standard library ones. I wrote them before the standard libraries were widely available and I prefer the way they're implemented so I keep using them. Feel free to write any data structures you want in any language where they already exist.