Skip to main Content

Beginning Java Data Structures and Algorithms

  • Course Code LO035420
  • Duration 2 days

Additional Payment Options

  • GTC 11 inc. VAT

    GTC, Global Knowledge Training Credit, please contact Global Knowledge for more details

Public Classroom Price

£695.00

excl. VAT

Request Group Training Add to Cart

Course Delivery

This course is available in the following formats:

  • Company Event

    Event at company

  • Public Classroom

    Traditional Classroom Learning

  • Virtual Learning

    Learning that is virtual

Request this course in a different delivery format.

Course Overview

Top

This is a two-day course packed with the theory and hands-on activities that will help cement the foundation of algorithms and data structures.

Algorithms and data structures are the lifeblood of programming. They enable the programmers to write the code that handles the data efficiently.

Course Schedule

Top

Target Audience

Top
The target audience of this course is Java beginners who want to estimate the efficiency of the code and understand different algorithm techniques beneficial for a broad set of tasks. It is expected that the audience has a basic understanding of object-oriented programming techniques.

Course Objectives

Top

This course begins with the introduction of basic concepts of algorithms and data structures and progresses to implement them using Java. Here is the list of course objectives:

  • Learn about space and time complexities express them using big O notation
  • Explore various classic sorting algorithms, such as merge and quick sort
  • Understand the workings of basic (Lists, queues and stacks) and complex data structures (hash tables and binary trees)
  • Gain an insight into various algorithm design paradigms (Greedy, Divide and Conquer and Dynamic programming)
  • Discover string matching techniques
  • Master graph representations and learn about different graph algorithms, such as cycle detection, traversal and shortest path
     

Course Content

Top

Lesson 1: Algorithms and Complexities

  • Developing our first alThis is a two-This is a two-day course packed with the theory and hands-on activities that will help cement the foundation of algorithms and data structures.
  • Algorithms and data structures are the lifeblood of programming. They enable the programmers to write the code that handles the data efficiently.day course packed with the theory and hands-on activities that will help cement the foundation of algorithms and data structures.
  • Algorithms and data structures are the lifeblood of programming. They enable the programmers to write the code that handles the data efficiently.gorithm
  • Measuring algorithmic complexity with Big O notation
  • Identifying algorithms with different complexities

Lesson 2: Sorting Algorithms and Fundamental Data Structures

  • Introducing bubble sort
  • Understanding quick sort
  • Using merge sort
  • Getting started with fundamental data structures

Lesson 3: Hash Tables and Binary Search Trees

  • Introducing hash tables
  • Getting started with binary search trees

Lesson 4: Algorithm Design Paradigms

  • Introducing greedy algorithms
  • Getting started with divide and conquer algorithms
  • Understanding dynamic programming

Lesson 5: String Matching Algorithms

  • Beginning naive search algorithm
  • Getting started with the Boyer-Moore string searching algorithm
  • Introducing other string matching algorithms

Lesson 6: Graphs, Prime Numbers, and Complexity Classes

  • Representing graphs
  • Traversing a graph
  • Calculating shortest paths
  • Prime numbers in algorithms
  • Other concepts in graphs
  • Understanding complexity classes of problems

Course Prerequisites

Top

Hardware
 
This course will require a computer system for the instructor and one for each student. The minimum hardware requirements are as follows:

  • Processor: i3
  • Memory: 2 GB RAM
  • Hard disk: 10 GB
  • Internet connection

Software

  • Operating system: Windows 8 64–bit or MacOS
  • A text editor:  Notepad++
  • A terminal: Command Prompt or PowerShell on Windows or Terminal on MacOS
  • A run-time environment: Java Runtime Environment(JRE) 1.6 or higher
  • A software development kit: Java SE Development Kit, JDK 8 (or a later version)
Cookie Control toggle icon