Back to Data Structures and Performance
University of California San Diego

Data Structures and Performance

How do Java programs deal with vast quantities of data? Many of the data structures and algorithms that work with introductory toy examples break when applications process real, large data sets. Efficiency is critical, but how do we achieve it, and how do we even measure it? This is an intermediate Java course. We recommend this course to learners who have previous experience in software development or a background in computer science, and in particular, we recommend that you have taken the first course in this specialization (which also requires some previous experience with Java). In this course, you will use and analyze data structures that are used in industry-level applications, such as linked lists, trees, and hashtables. You will explain how these data structures make programs more efficient and flexible. You will apply asymptotic Big-O analysis to describe the performance of algorithms and evaluate which strategy to use for efficient data retrieval, addition of new data, deletion of elements, and/or memory usage. The program you will build throughout this course allows its user to manage, manipulate and reason about large sets of textual data. This is an intermediate Java course, and we will build on your prior knowledge. This course is designed around the same video series as in our first course in this specialization, including explanations of core content, learner videos, student and engineer testimonials, and support videos -- to better allow you to choose your own path through the course!

Status: Data Structures
Status: Java
IntermediateCourse42 hours

Featured reviews

AB

5.0Reviewed Jan 16, 2017

A very good course for beginners , people having prior knowledge about data structures might found it a bit easy , anyways the projects were fun and was course was worth taking

HB

5.0Reviewed Sep 6, 2016

Amazing course, I learnt so much about interesting data structures and gained a new understanding of how important it is to choose the right data structure for a specific purpose.

CW

5.0Reviewed Jul 14, 2019

Well-organized lecture videos, which contain clear explanation of difficult concepts and very useful material to help me finish all programming assignments. HIGHLY RECOMMENDED!

AE

5.0Reviewed Dec 5, 2016

Very solid review of data structures. In fact, I learned a lot of new things along the way like how to benchmark test Java code and how to properly use JUnit and other unit testing frameworks.

AE

5.0Reviewed Dec 31, 2018

Very good and ordered exploration of using a variety of datastructures in the most efficient way possible. Good for anyone who wants to know more about Strings in Java specifically.

SK

5.0Reviewed Jan 3, 2016

Very good course. This is a very right course for Java learners, will be touched on all basic stuff that are needed in Java. I will highly recommend this course for my colleagues.

SS

5.0Reviewed Dec 18, 2015

The course curriculum is well designed and teaches students the basic data structures needed to be a successful software engineer. The project is good, and the weekly assignments are challenging.

AG

5.0Reviewed Feb 27, 2020

This was a challenging course for me. But in the best way possible! The programming challenges are interesting and the application of asymptotics is made clear and relevant throughout.

AB

5.0Reviewed Jun 16, 2017

This course helped understand the utility of data structures in software and how to benchmark algorithms in order to compare their performance so as to choose the most efficient algorithm

HB

5.0Reviewed Dec 26, 2015

Are you good at data structures ? If not, this will be the best course to start with. You learn the data structure and implement right away in your project assigment. Very practical.

JH

4.0Reviewed Feb 11, 2017

The course is really good, I've learned a lot. The only thing I am not happy about, is lack of posibility to check the assignments without having bought the course.

MK

5.0Reviewed Dec 20, 2015

This is a great course. If you ever feared (like me) about implementations of linked-list, trees, tries, you should definitely join this! It would make these things much simpler!!!

All reviews

Showing: 20 of 458

Surhud Bhagali
3.0
Reviewed Apr 8, 2020
Rahul Sain
2.0
Reviewed Aug 1, 2020
Jade Mattesen-Feldhousen
5.0
Reviewed Jan 5, 2019
Alex Rivadeneira
2.0
Reviewed May 2, 2016
PRAVYA R
1.0
Reviewed Jul 13, 2020
Akosa Erinne
5.0
Reviewed Dec 6, 2016
Tarun Lunia
1.0
Reviewed May 7, 2020
Yvette White
5.0
Reviewed Feb 6, 2016
Shoukang
5.0
Reviewed Jul 9, 2021
Sruti Raju
5.0
Reviewed Mar 25, 2019
Dixon Bross
5.0
Reviewed Oct 13, 2017
Yatin Karvir
5.0
Reviewed Jan 11, 2016
Pat Claffey
5.0
Reviewed Mar 3, 2019
Akshay Gupta
5.0
Reviewed Sep 10, 2019
Krishna
5.0
Reviewed Sep 26, 2019
Krishna Addepalli
4.0
Reviewed Feb 1, 2019
SHAOCHIN LIN
4.0
Reviewed Sep 11, 2019
Valeriano Tortola
3.0
Reviewed Feb 20, 2016
Jesús Aponte
5.0
Reviewed Feb 7, 2016
Karen Andrea Canto Ciau
5.0
Reviewed Jul 13, 2024