Algorithms and Data Structures in Java
3.9 (34 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
6,087 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Algorithms and Data Structures in Java to your Wishlist.

Add to Wishlist

Algorithms and Data Structures in Java

Build 6 GUI applications in Java and learn how to program like a pro
New
3.9 (34 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
6,087 students enrolled
Last updated 8/2017
English
English [Auto-generated]
Current price: $10 Original price: $195 Discount: 95% off
5 hours left at this price!
30-Day Money-Back Guarantee
Includes:
  • 6 hours on-demand video
  • 10 Supplemental Resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
What Will I Learn?
  • Build GUI applications in Java.
  • Learn algorithms and data structures.
  • Create real life applications.
  • Build 6 GUI applications in Java step by step
View Curriculum
Requirements
  • You need a PC or Mac.
  • You need internet connection.
  • You should know the basics of programming i.e. structured programming.
  • It would be recommended to know object oriented programming.
Description

Who is this course for?

This course is for those who want to learn how to program correctly by using the proper data structures but also acquire knowledge on how to create applications with graphical user interface. This course is for all levels of students, but less for those who have no "relationship" with at least one programming language and is targeted mainly at new programmers and students who want to learn programming correctly!

What is the difference with the other corresponding courses?

The difference with other courses is that with this course you will learn data structures and algorithms that are taught in universities today with more great examples and without unnecessary words.  And the most important difference is that in this course you will learn further how is to create applications with graphical user interface and essentially you will learn to make integrated applications.

Can I try this course risk free?

Yes, this course comes with a 30-Day Money Back Guarantee from Udemy. If you decide that this course is not the right for you, you can get your money back within 30 days. No questions asked.

About the course.

  1. In the first section we will see what we need to start.
  2. In the second section you will learn about search algorithms.
  3. In the third section we will see the data structures, how they are made and how we use them.
  4. In the fourth section you will see sorting algorithms and you'll learn how they work, how quick they are and how to use them.
  5. For every piece of material exists a corresponding application.
  6. Most applications are with GUI.
  7. The material shown is the academic material that most universities have in the data structures course.
  8. The knowledge of data structures and algorithms lay the foundations to become better programmer.


Who is the target audience?
  • Anyone who wants to learn data structures and algorithms.
  • Anyone who wants to create applications with Graphical User Interface.
Compare to Other Java Courses
Curriculum For This Course
45 Lectures
05:59:07
+
Introduction
3 Lectures 06:56


Install NetBeans on Windows
02:26
+
Search Algorithms
6 Lectures 35:28

In this lecture we explain the linear search algorithm. This algorithm is simple and it is important to use it as an introduction in algorithms and data structures.

Linear Search Theory
04:46

At this point we are going to create an application based on the serial search algorithm by using Graphical User Interface.

Preview 05:17

Welcome to the second part of our project. In this lecture we explain and implement the serial search. We also see how to initialise an array with unknown size and how to print the array on the frame that we have created on our previous lecture.

Linear Search Application Part 2
05:57

This lecture is the final part of the application. The final step is to unite the code from the class, with the code from the frame to finish the project.

Linear Search Application Part 3
05:28

Welcome to Lecture 8 in this lecture we explain the Binary search algorithm. This algorithm is simple and it is important to use.

Binary Search Theory
06:58

Welcome to lecture 9 in this lecture we are going to extend the previous application by adding  an extra functionality, which is the algorithm of the binary search.

Binary Search Application
07:02
+
Data Structures
26 Lectures 04:04:52

Welcome to lecture 10. This lecture is an introduction to the new chapter of Data Structures. In this lecture we will see some basic methods of lists, such as creating nodes, inserting a node in a list at the start or at the end of the list and deleting nodes from the start or the end of the list.

Linked List Theory
08:21

Welcome to our project application which is based on the previous algorithms. In this lecture we will create an application in which with the use of GUI we will manage a list.

Linked List Application Part 1
04:11

In this lecture we will create the List class and we will make the basic methods which are the following: isEmpty, insertAtFront, insertAtBack, removeFromFront, removeFromBack, Print and the removeAll method. Also we will create the EmptyListException for handling the exception messages.

Linked List Application Part 2
14:02

Welcome the part 3 of the application in which we create the graphical interface of our project.

Linked List Application Part 3
11:22

In this lecture we are going to create a car manager application. This application will insert cars in a list, it will print the list, the number of cars inside the list, it will print the cars by brand and can also delete all cars.

Preview 08:21

In this lecture we will continue the application that we have been building this far. We will build the class node which contains the nodes of the list, the class list which is the list of the cars, and the class car which contains the specifications and methods of the cars.

Car Manager Application Part 2
08:03

In this lecture, we will create the rest frames of the application.

Car Manager Application Part 3
06:39

Hello, and welcome to lecture 17. In this lecture we will connect the classes and we will finish the project.

Car Manager Application Part 4
20:32

Hello and welcome to lecture 18. In this lecture we are going to explain how to delete and how to insert a node inside the list.

Linked List B Theory
03:17

 In this lecture we are going to update the cars management application. This application will insert cars in a list, it will print the list, the number of cars inside the list, it will print the cars by brand and can also delete all cars. Also will insert and delete a specific node.

Updating the Car Manager Application
19:48

In this lecture we are going to explain the stack data structure. We will see how it works with simple examples.

Stack Theory
04:43

In this lecture we will create an application which will simulate the functionality of a stack with integer numbers.

Stack Application Part 1
03:56

In this lecture we will create the functionality of the application from the previous lecture.

Stack Application Part 2
13:31

In this lecture we are going to explain the queue data structure and we are going to create an application similar to the one that we have build for the stack structure. We will see how it works with simple examples. 

Queues Theory
08:01

In this lecture we will create an application which will simulate the functionality of a queue with integer numbers

Queues Application Part 1
03:49

In this lecture we will create the functionality of the application from the previous lecture.

Queues Application Part 2
11:22

Hello and welcome to lecture 26, in this lecture we are going to explain the Hash Map data structure.

Simple Hash Map Theory
11:05

In this lecture we will create a program in which we see how the hash table works.

Simple Hash Map Application
14:20

In this lecture we are going to explain the hash table collision resolution by chaining. In the following lectures we are going to create an application based on the hash table with collision resolution by chaining. 

Linked Hash Map Theory
10:01

In this lecture we will create a program in which we see how the hash table works.

Linked Hash Map Application Part 1
03:58

In this lecture we will continue the application by creating the hash map class.We will also create the methods getKey which returns the key of the element, the get method that searches the map, the put method that inserts the element in the map and the remove method that deletes the element from the map.

Linked Hash Map Application Part 2
12:12

 In this lecture we will see the Heap With Array. We have two methods for simulating the heaps. The first one is heap with the use of array. The second is heap with the use of nodes. In this lecture we are going to explain the heaps with array.

Heap With Array Theory
06:41

 In this lecture we are going to create a command line application in Java based on the heap with array data structure.

Heap With Array Application
10:17

 In this lecture we explain the second method for simulating the heap data structure.

Heap With Nodes Theory
08:05

 In this lecture we are going to create a command line application in Java based on the heap with nodes data structure. We are going to create a tree in ascending order .

Heap With Nodes Application Part 1
03:23

Hello and welcome to lecture 35. In this lecture we will continue with the previous application

by creating the class heap and we will run the program.

Heap With Nodes Application Part 2
14:52
+
Sorting Algorithms
10 Lectures 01:11:51

Hello and welcome to section 4. In this section we explain the the basic sorting algorithms in Java. In this lecture we start with the selection sort algorithm and then we are going to build an application with the use of these algorithms.

Selection Sort Theory
03:37

Hello and welcome to lecture 36. In this lecture we will create the application.

Sort Application Part 1
08:35

Hello and welcome to lecture38 In this lecture we explain the bubble sort algorithm and then we are going to update the previous application by adding the bubble sort algorithm.

Bubble Sort Theory
03:42

Hello and welcome to lecture 39. In this lecture we will update the application.

Sort Application Part 2
04:50

Hello and welcome to lecture 40  In this lecture we explain the insertion sort algorithm and then we are going to update the previous application by adding the insertion sort algorithm.This algorithm sorts the data like we sort the cards in our hand.

Insertion Sort Theory
03:20

Hello and welcome to lecture 41. In this lecture we will update the application.

Sort Application Part 3
05:46

Hello and welcome to lecture 42  In this lecture we explain the merge sort algorithm and then we are going to update the previous application by adding the merge sort algorithm.This algorithm is faster than the previous algorithms that we explained, but usually is faster when sorting bigger arrays.

Merge Sort Theory
09:13

Hello and welcome to lecture 43. In this lecture we will update the application.

Sort Application Part 4
11:05

Hello and welcome to lecture 44  In this lecture we explain the quick sort algorithm and then we are going to update the previous application by adding the merge sort algorithm.

Quick Sort Theory
05:34

Hello and welcome to lecture 45. This is the complete application with all the sorting algorithms.

Sort Application Part 5
16:09
About the Instructor
Nikos Katsilidis
4.0 Average rating
158 Reviews
10,596 Students
3 Courses
Computer Science Courses | 10K+ students

Nikos graduated from the 2nd General Lyceum in Xanthi.

He is currently a student at the Department of Information & Communication Systems Engineering at the University of the Aegean in Samos.

In his courses you will find:

-Programming tutorials with various computer languages such as C, C++ or Java. 

-Website building tutorials with content management systems such as Wordpress, Joomla or Drupal. 

-Front end web development tutorials with html, css, javascript and jquery as well as back end web development tutorials with php and mysql.

His goal as a Udemy instructor is to make people who don't have knowledge about programming learn about it and help university or high school students that struggle with programming classes ace their exams.

Christos Topalidis
4.0 Average rating
120 Reviews
8,145 Students
2 Courses
Software Engineer

My name is Christos Topalidis and I am from Greece. I graduated from the General Lyceum in Plati.

I am currently student at the Department of Information & Communication Systems Engineering at the University of the Aegean in Samos.

The languages I know are Java , c , c++ , python , c# and SQL . 

George Katsilidis
4.1 Average rating
177 Reviews
13,713 Students
5 Courses
Director/Editor, Udemy instructor

About George Katsilidis:

George did his bachelor in Biomedical department of Parma in Italy after he graduated from theGeneral Lyceum High School in Greece. Now he is a professional editor and cinematographer in Unique Productions that counts numerous projects such as short length movies, music videos, advertising and promotional videos for companies.

George Katsilidis is a young instructor and practically new to Udemy, but with 15 years experience in Martial Arts, Parkour/Freerunning/Tricking, Stunts, Gymnastics/Acrobatics, Fitness. He is certified by the International Taekwondo Federation as a 1st Dan black belt athlete in 2006. He did his first steps as an instructor in martial arts, parkour/freerunning and fitness 8 years ago and he still teaches many students. He was teaching parkour and fitness in foundation for young people with social problems in Italy for 2 years. His biography also includes personal training lessons for a wide range of ages!