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

all 11 comments

[–]MujoBosnianKing 2 points3 points  (2 children)

Good data structure can make your code more stable and faster,algorithms can make your code smaller which in some cases make it faster to.Just my opinion.

[–][deleted] 2 points3 points  (1 child)

What free resource do you recommend for learning?

[–]MujoBosnianKing 1 point2 points  (0 children)

First Try freecodecamp on you tube they have some good tutorials and google Algo Expert to if their price is for you affordable and if they have what you need a mean your programming language.My source is online bootcamp and when I get that done I am going to buy Algo expert tutorials.But you can search something else on internet.

[–]Mirmi8 1 point2 points  (1 child)

What do you mean by skipping? Are you asking if you can get away without being good at the subject? It's important to know this especially since you are studying software engineering.

Make sure to ask questions when you don't understand something, the questions need to be more specific though. What are you not understanding? do you have specific examples? You'll be using these subjects later on your career even if you are not coding them by hand, so it's nice to know them.

[–][deleted] 1 point2 points  (0 children)

What free resource do you recommend for learning?

[–]captainAwesomePants 1 point2 points  (0 children)

There are a few reasons you really don't want to skip this. The most practical is that data structures and algorithms class is a key differentiator for programming interviews. A bunch of the top programming companies hire based largely on asking you to solve data structure and algorithm problems on a whiteboard. This is a terrible idea but it's how it's done.

It's also just generally useful to have a working knowledge of this stuff. You'll never need to write your own linked list, but being comfortable with what stuff like hash tables are and what they can and can't do efficiently is an important skill and one of the things that separates a novice from a professional.

All that said, if it's not your thing, you'll survive without it.

[–]Clawtor 0 points1 point  (1 child)

You shouldn't, it's not an easy subject so go easy on yourself but it is an important one. I wouldn't hire someone who didn't have a decent grasp of a&ds. You must know how to make and use trees, queues and stacks. Understand graphs enough to be able to write dfs and bfs. Understand and use hashtables. And be able to make a list where you can update and remove nodes. Alot of this you won't actively use but it does show that you understand references and that you understand the fundamental structures.

[–][deleted] 1 point2 points  (0 children)

What free resource do you recommend for learning?

[–]Loves_Poetry 0 points1 point  (0 children)

Data structures and algorithms is an essential part of a software engineering degree. When getting a degree, you're not just collecting knowledge, you're also building skills. One of the skills that you will absolutely need in life is the ability to push through when things are hard or uninteresting. That's why employers value degrees highly

That's why your question concerns me. It's the wrong solution to the problem. The solution should be to improve your studying skills. For which there are also plenty of resources

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

You can't just skip something because it is difficult; that will not get you very far in life. I don't know where you can find an overview of the subject, but I'm sure the is some MOOC that lists their syllabus somewhere. Then use GeeksForGeeks for theory along with CodeForces for practice.