SGLearn@Algorithms and Data Structures in Java - Part II
0.0 (0 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.
1 student enrolled
Wishlisted Wishlist

Please confirm that you want to add SGLearn@Algorithms and Data Structures in Java - Part II to your Wishlist.

Add to Wishlist

SGLearn@Algorithms and Data Structures in Java - Part II

This is a Duplicate Course for Singaporeans picking up new skillsets and competencies under the CITREP+ Scheme.
0.0 (0 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.
1 student enrolled
Created by DioPACT SG
Last updated 6/2017
English
Price: $90
30-Day Money-Back Guarantee
Includes:
  • 8 hours on-demand video
  • 4 Articles
  • 4 Supplemental Resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion

Training 5 or more people?

Get your team access to Udemy's top 2,000 courses anytime, anywhere.

Try Udemy for Business
What Will I Learn?
  • Grasp the fundamentals of algorithms and data structures
  • Develop your own algorithms that best fit to the personal need
  • Detect non-optimal code snippets
  • Get to know data compression
  • Get to know sorting algorithms
View Curriculum
Requirements
  • Core Java
  • Eclipse or other IDE
Description

Welcome to the SGLearn Series targeted at Singapore-based learners picking up new skillsets and competencies. This course is eligible for the CITREP+ funding scheme if you are a Singaporean above 16 years old, terms and conditions apply. Enjoy the course. 

Do note that this course on Algorithms and Data Structures in Java is by Balazs Holczerand is duplicated for Singaporeans to enjoy the training subsidy from the Singapore government.

_____________ 

Note from Balazs Holczer

This course is about data structures and algorithms. We are going to implement the problems in Java, but I try to do it as generic as possible: so the core of the algorithms can be used in C++ or Python. The course takes approximately 7 hours to complete. I highly recommend typing out these data structures several times on your own in order to get a good grasp of it.

First, we are going to discuss prefix trees: modern search engines for example use these data structures quite often. When you make a google search there is an autocomplete feature because of the underlying trie data structure. It is also good for sorting: hashtables do not support sort operation but on the other hand, tries do support. 

Substring search is another important field of computer science.You will learn about Boyer-Moore algorithm and we will discuss brute-force approach as well as Raabin-Karp method.

The next chapter is about sorting. How to sort an array of integers, doubles, strings or custom objects? We can do it with bubble sort, insertion sort, mergesort or quicksort. You will learn a lot about the theory as well as the concrete implementation of these important algorithms. 

The last lectures are about data compression: run-length encoding, Huffman encoding and LZW compression.

Hope you will like the course, let's get started!

Who is the target audience?
  • This course is meant for university students with quantitative background (mathematics, computer science) but anyone with core java knowledge can get a good grasp of the lectures
Compare to Other Java Algorithms Courses
Curriculum For This Course
76 Lectures
07:56:11
+
Introduction
2 Lectures 01:15

Complexity theory
00:05
+
Prefix Tree - Tries
15 Lectures 01:39:16



Prefix tree introduction - autocomplete
05:19

Prefix tree introduction - trie as a hash table
09:01

Prefix tree introduction - hashing versus tries
06:47

Prefix tree introduction - applications
02:05

Prefix tree implementation - insert, search I
06:49

Prefix tree implementation - insert, search II
08:46

Prefix tree implementation - insert, search III
08:10

Prefix tree implementation - as a map
06:56

Prefix tree implementation - autocomplete
09:08

Prefix tree implementation - sorting
02:32

Longest common prefix
05:21

Longest common prefix in networking
07:31
+
Ternary Search Tree
6 Lectures 34:26
Ternary search tree introduction - basics
06:01

Ternary search tree introduction - insert
05:30

Ternary search tree introduction - get
04:18

Ternary search tree introduction - applications
05:05

Ternary search tree implementation I
08:12

+
Substring Search
7 Lectures 45:53
Brute-force search introduction
06:42

Brute-force search implementation
07:04

Boyer-Moore search introduction
06:38

Boyer-Moore search example
04:26

Boyer-Moore implementation I
10:15

Boyer-Moore implementation II
02:06

Rabin-Karp algorithm introduction
08:42
+
Strings
6 Lectures 38:17
Strings introduction
13:01

String reversion
06:37

Suffixes
05:01

Prefixes
04:00

Longest common prefix
05:34

Longest repeated substring problem
04:04
+
Basic Sorting Algorithms
24 Lectures 02:31:09
Sorting introduction
08:02

Adaptive sorting algorithms
03:05

Bogo sort introduction
03:35

Bogo sort implementation
06:43

Sleep sort
03:08

Bubble sort introduction
05:35

Bubble sort implementation
05:15

Selection sort introduction
06:39

Selection sort implementation
04:12

Insertion sort introduction
07:39

Insertion sort implementation
04:49

Shell sort introduction
08:14

Shell sort implementation
06:46

Quicksort introduction I
08:53

Quicksort introduction II
07:41

Quicksort implementation
06:55

Merge sort introduction - divide
06:50

Merge sort introduction - conquer
08:54

Merge sort implementation
06:26

Hybrid algorithms introduction
05:50

Non-comparison based algorithms
02:27

Counting sort introduction
08:06

Counting sort implementation
06:42

Radix sort introduction
08:43
+
Data Compression
11 Lectures 01:25:04
Run length encoding introduction
10:46

Run length encoding implementation - encode
05:15

Run length encoding implementation - decode
05:45

Huffman encoding introduction
09:13

Huffman decoding
04:05

Huffman encoding implementation I - helper classes
07:27

Huffman encoding implementation II - encoding
07:58

Huffman encoding implementation III - testing
07:51

LZW compression introduction - compression
10:27

LZW compression introduction - decompression
06:53

LZW implementation
09:24
+
Source Code & Slides
3 Lectures 00:06
Slides
00:01

Source code
00:01

Discounts for other courses
00:02
+
Interview with Singapore Expert
2 Lectures 20:45
Background of Expert
10:45

Information and Communication Technology in Singapore
10:00
About the Instructor
DioPACT SG
4.5 Average rating
1 Review
7 Students
11 Courses
SGLearn

Dioworks is an e-learning design company focused on using technology as enablers to make learning easy, engaging and effective. Premised on innovative designs, pedagogy and research, we provide quality learning experiences for learners globally. Dioworks offers bespoke solutions for organisations to integrate learning, training and assessment of work-based competencies via blended learning strategies. We are also the local partner to Udemy in Singapore. 

More specifically, we combine the strengths of Classroom-Facilitated Learning, Massive Open Online Courses (MOOCs) in partnership with UDEMY Inc, and our "Kinetic Coach" automated response training solution to achieve learning outcomes.