Data Structures & Algorithms I: ArrayLists, LinkedLists, Stacks and Queues
About this Course
The Data Structures & Algorithms course begins with a review of some important Java techniques and nuances in programming. The course requires some prior knowledge of Java and object-oriented programming, but not in data structures or algorithms. This course introduces you to time complexity, and threads this concept throughout all data structures and algorithms presented in the course. You will work with the principles of data storage in Arrays and LinkedList nodes. You will program the low-level data structures: Singly, Circular and Doubly LinkedLists; and explore edge cases and efficiencies. LinkedLists and Arrays are used to implement Abstract Data Types, ADTs: Stacks, Queues and Deques. Harnessing the power of recursion to move through these data structures is necessary. As the size changes in your data structures, it becomes important to examine amortized analysis of the operations. The course design has several components and is built around modules. A module consists of a series of short (3-5 minute) instructional videos. In between the videos, there are textual frames with additional content information for clarification, as well as video errata dropdown boxes. All modules include an Exploratory Lab that incorporates a Visualization Tool specifically designed for this course. The lab includes discovery questions that lead you towards delving deeper into the efficiency of the data structures and examining the edge cases. This is followed by a set of comprehension questions on topics covered in the module that count for 10% of your grade. The modules end with Java coding assignments which are 60% of your grade. Lastly, you'll complete a course exam, which counts for the remaining 30% of your grade. This is a great course that has been derived from the on-campus version of CS1332 at the Georgia Institute of Technology, and is backed with an impressive reputation.Created by: The Georgia Institute of Technology
Level: Intermediate

Related Online Courses
Este es un curso introductorio para aprender a programar en Java diseñado para enseñar a escribir "buen" código en este lenguaje de programación, entendiendo como "bueno" aquel que es correcto y e... more
Never before has the video game market been at a better time. There are currently many platforms available and the emergence of mobile devices has revolutionized the sector. The existence of... more
A tech talent shortage continues as organizations adopt higher security standards to address the ongoing risk of threats and breaches. This course builds key skills to address common security... more
Site Reliability Engineers must have the right tools and strategies to perform in a technical, fast-paced environment. IBM Cloud SRE is guided by nine competency areas that lead to the successful... more
Please Note: Learners who successfully complete this IBM course can earn a skill badge — a detailed, verifiable and digital credential that profiles the knowledge and skills you’ve acquired in thi... more