Save for later

Data Structures and Algorithms

So you've worked with the basics of data structures and algorithms in Java (or another OO programming language) but feel like you need a deeper knowledge of how things work.

Maybe you have taken other courses on this topic that focus more on teaching how to pass job interview tests (theory) instead of how to make good choices for the programs you develop (implementation).

Or maybe you are ready to move from a junior programming position to a more senior one and need to get skilled in advanced concepts like data structures, and how to apply them to your own projects.

Whatever the reason, if you are looking for a course that focus on the implementations to give you a complete understanding of how things work, then this is the course for you.

This course goes over the theory of how things work, but only to give you what you need to know to understand the implementation covered.

Complete source code is included and available for you to download.

This is a hands-on course. If you want to try understand things at a deep level, and work on implementations, rather than theory, then again, this is the course for you.

Topics covered:-

ArraysLinked ListsTreesHashtablesStacksQueuesHeapsSort algorithmsSearch algorithms

The course also spends more time than most other courses of its kind looking at what’s available in the JDK. Students wanting to understand how things work "under the hood" will benefit enormously from this course.

Why learn about data structures and algorithms?

The reality is, the more you learn about data structures and algorithms, the better a programmer you become.


Because, data structures and algorithms are effectively patterns for solving problems. You want to add as many of them as you can to your skill-set. By doing so, you will find you solve more problems, and use the right tools for the job, in a more elegant way. And you will learn a heap of them in this course.

Why enrolling in this course is the best decision you can make.

Your instructor, Sarah Ettritch has over 25 years’ software development experience and has been working with Java since JDK 1.1. She has spent many years creating tools used by developers, which required a deep knowledge of data structures and algorithms, and is perfectly qualified to teach this course.

Most courses focus on giving you the theory of how things work, so that you can take an interview. Whilst the theory is important, the knowledge of how to implement these data structures and algorithms are of vital importance.This course goes over the theory of how things work, but only to give you what you need to know to understand the implementation covered. The main focus of the course is to give you a real understanding of how things work under the hood, so that you can apply this to future programming projects.

If you want to actually understand how things work, and be able to take that understanding and apply it to your own programs, then this course is for you.

After completing this course, you will have a solid understanding of data structures and algorithms (both the theory, and the implementation).The sooner you sign up for this course, the sooner you will have the skills and knowledge you need to increase your job or consulting opportunities. Java developers with key skills and understanding of data structures and algorithms are in high demand and get paid extremely well.

If you are ready for that new job promotion or consulting opportunity, it's time to get started.

Why not get started today?

Click the Signup button to sign up for the course

Get Details and Enroll Now

OpenCourser is an affiliate partner of Udemy and may earn a commission when you buy through our links.

Get a Reminder

Send to:
Rating 4.3 based on 479 ratings
Length 16 total hours
Starts On Demand (Start anytime)
Cost $14
From Udemy
Instructors Tim Buchalka's Learn Programming Academy, Sarah Ettritch, Goran Lochert, Tim Buchalka
Download Videos Only via the Udemy mobile app
Language English
Subjects Programming
Tags Programming Languages Development

Get a Reminder

Send to:

Similar Courses

What people are saying

data structure

The course is well designed with a good structure and the instructor is very good at explaining the algorithms and data structures in a very simple and easy to understand manner.

Many data structures are well explained with hands on examples.

This course is perfect for anyone learning about Algorithms and Data Structures.

One thing I would love to see added is Graphs, otherwise it covered a wide range of algorithms and data structures!

The only thing I wish that could be added is more Data Structures challenges, especially those who are frequently asked by companies such as Amazon, Google, Facebook or Microsoft.

It helped clear the concepts on basic and complex data structures.

Please start a course on graphs A really good course to get your hands dirty with data structures and a deeper dive with algorithms.

Ya, it was good and it help me to brush up on data structure and algorithm skill.

Would suggest using animations while explaining operations being performed on the data structures, as plain slides could get a bit monotonous.

Overall, it is a great course to learn basics data structures Best for Data Structure Introduction Implementation In the beginning I viewed this course as fairly slow, but ultimately I have gained a great deal of facility through taking detailed notes and practicing multiple iterations of each topic.

The comparisons with other sorting algorithms is also very well done.... Really liked it... In-depth course on data structures well done for those who already have a little experience.

The instructor Sarah goes into the details and mechanics of each algorithm and data structures quite painstakingly and does a great job explaining each topic.

Wish they covered graphs, red & black, and AVL trees, but otherwise a great choice to get a good understanding of sorting and data structures in Java (or any language).

very clear animations of the data structure and algorithms, the person has a clear voice Great Lectures!

Read more

so far

the explanation so far i had with bubble, selection, insertion sort is not helping me to understand much about them but when i looked at GeeksforGeeks, explanation and code logic is pretty good and i am able to understand very easily.

Good course so far.

Very Nice so far is good It is good explanation,but narration is too fast.

So far, So good.

So far so good.

So far very basic that I know already.

so far so good.

So far it is good, lets see how it goes in upcoming sections...

So far it seems like a good match for me.

improving skills The way of teaching yes, so far, it's mostly introduction and java installation process.

Very good Good course, but a pop filter should have been used Ok So far its simple and easy I like it.

Wish there was slightly more difficult implementations and advanced data structures - like AVL trees So far so good.

So far everything is explanatory and detailed.

content looks great Having not previously studied data structures and especially algorithms in great depth, this course so far has certainly filled that gap.

Read more

data structures and algorithms

I really like that we first learn the theory and then we see how to implement the different data structures and algorithms.

If you want to get to know the majority of basic data structures and algorithms, this is the course for you!

It helps not only learning the concepts of Data structures and Algorithms but also improves the logical thinking to handle the java code in smart way.

A good course to brush up your fundamentals on data structures and algorithms.

I learned a lot from this about DS and Algo.Thanks A really good way to begin building a foundation into understanding data structures and algorithms.

A course with great wealth of information and hands on practice covering the most common data structures and algorithms using the Java language.

I learned both about redy Data structures and algorithms in the JDK as well as how to implement them on my own.

It would be good if we can have a follow up course on some of the advanced data structures and algorithms.

I highly recommend this if you want to learn about data structures and algorithms.

Brilliant course to learn data structures and algorithms .

This was my first course on Udemy and I really enjoyed learning.I seriously didn't knew that there were so many sort algorithms.Being an Electronics and TeleCommunication Graduate who wants to get into IT industry,I always heard that Data Structures and Algorithms is a key subject to become a better programmer and now I know why.Sarah Mam explains really well and to the point.I am grateful that I chose this as my first Udemy course and I am thankful to her for teaching me such a important subject.The only reason I am not giving a 5 star rating is there should have been Graphs Topic at least a little bit and one or two extra lessons about implementing a Set-Related Program.Please try to add this for students who are going to enroll in this course in the future.I totally recommend this course to anyone who wants to learn Data Structures and Algorithms and it's practical implementations.I am sure I am a much better programmer now due to this course.One again Thank You!!

This course is a great overview of Data Structures and Algorithms!

--------------------------------------------------------------------- I bought this course to review common data structures and algorithms for technical interviews.

Anyway, this is overall a pretty good intro course on "Data Structures and Algorithms" (it covers pretty much all the sorting algorithms, awesome!)

Read more

easy to follow

The instructor explains all the concepts very clearly and it's easy to follow and understand.

Easy to follow.

pronunciation and voice is very clear, easy to follow ( by also reading text subtitles, I do have hearing loss), explanations and slides are clear, and tempo is good; it explains from start, to novices.

The teacher is easy to follow and straight to the point.

This course is incredibly easy to follow.

Very easy to follow.

yes Excellent course Sarah teach very fantastic easy to follow and understand her accent, I like too much this kind of teaching approach and I hope she have more course to come.

Fantastic :) She does great explanations and she is easy to follow.

I find Sarah's explanations and code to be clear and easy to follow.

Absolute nailed it ...... Love the way construct the course and make you think...If you are struggling with data structure you must go for it ....Thank me later Going good so far The course is consistent, easy to follow, clear.

Was easy to follow through the theory and coding samples.

Clear and easy to follow.

nice and easy to follow explanation.

Read more

recommend this course

I definitely recommend this course.

I would highly recommend this course to those who want to get a head start on Data Structures and Algorithm's using Java.

I recommend this course to anyone who has a solid understanding in Java and wants to take their learning to the next level.

Would I recommend this course: YES!

Overall, I highly recommend this course for those who want to really learn data structures and algorithms.

Hands down, I cannot recommend this course enough.

Read more

step by step

The theory is visual enough to get the idea, and the coding is explained step by step.

I like the step by step approach Yes, helped out a lot with college work amazing Way better than my AP Computer Science Teacher!

Step by Step.

it really goes step by step which is a good refresher.

step by step approach for installing IntelliJ Looking good Excellent!

Read more

explains the concepts

What I liked most about her is that she explains the concepts first and then she moves on to coding and showing you the actual implementation.

Every single concept is explained so clearly that anyone can get the concepts in very less time and the way she explains the concepts are just mindblowing.

I each video is thorough and explains the concepts of data structures clearly.

good explanations too much fluff so far The instructor explains the concepts very well and Gives practical real world applications for further understanding.

Read more

till now

Till now, I used to go with a gut feeling for the time complexity, to be frank.

till now I am able to understand everything.

its bit boring The theoretical portion should be graphical till now i found this course is of my use.

It is awesome till now.

The course explanation and content is really good till now The explanations are very clear and the pace is excellent.

not up to the level only basics are there till now I trust the authors.

Very insightful course Till now, I felt the way of teaching is good and simple.

Read more

for example

For example, PDF friendly booklet with all the theory and implementation that we can print out and review.

For example when she began teaching about lists and list types, shortly after explaining what a list was, she started explaining how you could implement a custom list type...

For example, in Tim’s Master Java class, you could learn how to use the JDK to implement different stuff, and this class would tell you how the classes in JDK are written both in theory and in practice.

For example, I certainly wouldn't say that by completing the course, I'll be able to "understand data structures and algorithms at a deep level".

If you can for example study arrays and other data structures in their basic concepts.

Read more

highly recommend

Great class on a very important subject, I highly recommend dedicating time and effort to grasp these vital concepts and the ability to implement them at will.

I highly recommend these guys !

time complexity

The way big (O) notation is explained, this is the first time I am actually getting a hold of what time complexity is and how to measure it.

i can understand it although when it comes to explaining time complexity , it could be little more lengthy as to why do we ambiguate the estimate to quadratic in case of bubble sort it was great Could use better animations, I’m on the sorting right now.

Got the clarity about the time complexity after watching this course.

Aside from algorithm, I needed to learn Time Complexity related to java.

Read more

other courses

Not to slow and not to fast, I did not have to speed up the video as with other courses on udemy.

Based on my experience with this course I have already enrolled in Tim's 3 other courses.

In most other courses or discussions regarding structures or algorithms, it's one while loop after another.

I tried with other courses in udemy and the way of teaching is far better and easy for students to grasp.

Read more


An overview of related careers and their average salaries in the US. Bars indicate income percentile.

Structures/Bridge $81k

Structures Technician 1 $81k

Associate Structures Engineering $83k

Structures Designer $85k

Structures CADD $91k

Structures Mech $94k

Aircraft Structures $96k

Structures Foreman $98k

Engineer of Structures $100k

Structures Engineer 1 2 $103k

Product Engineer - Structures $115k

Structures Estimator Manager $127k

Write a review

Your opinion matters. Tell us what you think.

Rating 4.3 based on 479 ratings
Length 16 total hours
Starts On Demand (Start anytime)
Cost $14
From Udemy
Instructors Tim Buchalka's Learn Programming Academy, Sarah Ettritch, Goran Lochert, Tim Buchalka
Download Videos Only via the Udemy mobile app
Language English
Subjects Programming
Tags Programming Languages Development

Similar Courses

Sorted by relevance

Like this course?

Here's what to do next:

  • Save this course for later
  • Get more details from the course provider
  • Enroll in this course
Enroll Now