Intermediate Algorithms


Class Description:

CS02a teaches algorithms and data structures using Java in a lecture format. Students complete weekly graded homework assignments and monthly quizzes. Most students find it helpful to attend office hours for support learning these advanced concepts. The material is similar to what may be encountered in lower level USACO competitions. After this class, students can choose to enroll in CS82, our Intro to Machine Learning course.


CS01b or permission of instructor

Related Classes

Sample Projects

These are examples of projects that students create as they grow their advanced Java coding skills in CS02a

Merge Sort Algorithm Demo: The rectangles are sorted by height using the algorithm.

Double Pendulum Simulation: Mathematically chaotic motion.

Centipede: When shot, the circles on the centipede turns into squares, which becomes barriers.

Fern Stepped: A demo of Recursions.

Mine Sweeper:Demo of the Algorithm: Flood Fill

Gradient Fill: Demo of the Algorithm: Flood Fill. The red dots define certain areas, so when it floods, those areas become the starting points for the color flood.

Linked List: Demo of data structure called Link List

Class Package

Virtual Machine (VM)
A Virtual Machine is a remote desktop that allows students to connect to it from anywhere. We provide VMs so that students use it during classes and to work on homework.
Office Hours with Teacher's Assistants
Office hours are led by our highly qualified teaching assistants. It is an easy and free way to get immediate feeback on your code. Our homework is difficult - office hours can help you overcome obstacles and develop a stronger understanding of the material!
Audio Lectures
We provide pre-recorded Audio Lectures to allow for students to self-study, practice, and learn CS.
Online Textbook
We provide an online, interactive, Java & Algorithms textbook to allow for students to self-study, practice, and learn CS.
Class Recordings
We provide recordings of our classes for if a student misses or needs to re-listen to a class.
Student Progress Report
The parent account dashboard allows for parents to track their student's progress in the class.


Selection Sort (and intro to Insertion Sort)

Insertion Sort

Binary Search

Merge Sort

Sorting Review

Quiz - Sorting


Stacks and Queues

Recursion with Stacks


Recursion and Floodfill Review

More Recursion Review

Quiz - Recursion and Floodfill

Objects and References Review, Linked List Intro

Linked Lists

Linked Lists Algorithms

Games with Linked Lists

Quiz - Linked Lists

All Class Times

Fall Semester

Thurs Oct 21 - Mar 17
4:15 PM - 5:15 PM ET
18 lessons
Main Teacher:
Andrew Tourtellot**
New Price With Coupon: $----

* Office Hours Included. See time on the bottom of website.

** Instructors currently scheduled are not guaranteed and could change at KTBYTE's discretion

These times don't work for you?

Your student's availabilities in Eastern Time
* Press the green plus button to add more availabilities.
Email Address
Phone Number
Student Age
Additional Comment