Introduction to Java Programming: Fundamental Data Structures and Algorithms
Learn to enhance your code by using fundamental data structures and powerful algorithms in Java.
Created by: Carlos Alario-Hoyos
Quality Score
Overall Score : 0 / 100
Course Description
You will learn about fundamental data structures, such as lists, stacks, queues and trees, and presents algorithms for inserting, deleting, searching and sorting information on these data structures in an efficient way.
Emphasis is put on immediate feedback and on having a fun experience. Programming knowledge is not only useful to be able to program today's devices such as computers and smartphones. It also opens the door to computational thinking, i.e. the application of computing techniques to every-day processes.
This course is designed taking into account the subset and recommendations of the College Board in order to prepare learners for the Advanced Placement (AP) Computer Science A exam.
1. Lists
The first week starts with the most fundamental data structure: Lists. Several implementations for storing information in Lists are presented in this week, including the use of Arrays of primitive data types, the use of Arrays of objects of the same class, and the use of links (Linked Lists).
2. Stacks
The second week addresses Stacks, which are one well-known linear data structure. Stacks are also called LIFO data structures (last-in, first-out). Algorithms for inserting and extracting information from Stacks will be discussed this week, as well as implementations of Stacks with Linked Lists.
3. Queues
The third week addresses another well-known linear data structure: Queues. Queues are also called FIFO data structures (first-in, first-out). Algorithms for inserting and extracting information from Queues will be discussed this week, as well as implementations of Queues with Linked Lists.
4. Trees
The fourth week introduces non-linear data structures, and particularly Trees. Binary Search Trees and Heaps are presented as two well-known examples of Trees. Algorithms for inserting and extracting information from Binary Search Trees and Heaps will be discussed this week. Implementations based on Linked Lists for Trees and Heaps will be analyzed.
5. Searching and Sorting
The last week presents some basic algorithms for searching and sorting information in linear and non-linear data structures. The efficiency of these algorithms is discussed, proposing alternatives for their improvement.
Instructor Details
- 0.0 Rating
0 Reviews
Carlos Alario-Hoyos
Carlos Alario received his MSc and PhD degrees in Information and Communication Technologies from the Universidad of Valladolid, Spain, in 2007 and 2012. He is currently a postdoctoral researcher and Teaching Assistant in the Department of Telematics Engineering at the Universidad Carlos III de Madrid, Spain. ----- Es investigador postdoctoral en el Departamento de Ingeniera Telemtica, de la Universidad Carlos III de Madrid. Doctor en Tecnologas de la Informacin y las Comunicaciones e Ingeniero de Telecomunicacin, por la Universidad de Valladolid. Sus habilidades y experiencia incluyen investigacin y desarrollo en MOOCs y SPOCs, redes sociales, aprendizaje colaborativo y evaluacin de experiencias de aprendizaje. Ha estado involucrado en el diseo y puesta en marcha de MOOCs de la Universidad Carlos III de Madrid, en las plataformas MiradaX y edX y ha participado en una veintena de proyectos relacionados con tecnologa educativa. Colaborador de Universidad Galileo en proyectos de investigacin.
Students also recommend
-
Python A-Z: Python For Data Science With Real Exercises! (2021)
-
4.5 (472 Reviews)
-
Provider: Udemy
Time: 11h
11.99
More courses by Carlos Alario-Hoyos
Introduction to Java Programming: Writing Good Code
Provider: edX
Time: 5 Weeks - 5-7 hours per week
Free
Introduccian a la programacian en Java: escribiendo buen cadigo
Provider: edX
Time: 5 Weeks - 5-7 hours per week
Free
Introduccian a la programacian en Java: estructuras de datos y algoritmos
Provider: edX
Time: 5 Weeks - 5-7 hours per week
Free


