Algorithms
-
CodingBat Recursion Exercises
http://codingbat.com/java/Recursion-1Basic and advanced recursion programming exercises in Java to help you " think recursively ".
-
Computer Algorithms @ Khan Academy
https://www.khanacademy.org/computing/computer-science/algorithmsSelf-paced course that introduces basic algorithms, binary search, sorting algorithms, asymptotic notation, recursion, and graphs. Includes many programming exercises. NOTE: exercises are in JavaScript.
-
Genetic Algorithms (geeksforgeeks)
https://www.geeksforgeeks.org/genetic-algorithms/Tutorial explaining how genetic algorithms work. Includes a relatively simple and well-documented example coded in C++ and Python.
-
Genetic Algorithms Tutorial
https://www.tutorialspoint.com/genetic_algorithms/index.htmA multi-part tutorial from TutorialsPoint explaining how genetic algorithms work. Covers all facets from population selection, fitness functions, parent selection, crossover, mutation, and more.
-
Introduction to Genetic Algorithms
https://towardsdatascience.com/introduction-to-genetic-algorithms-including-example-code-e396e98d8bf3Helpful tutorial by Vijini Mallawaarachchi that explains how genetic algorithms work. Includes a generic example coded in Java.
-
Jenkov: Java Collections Tutorial
http://tutorials.jenkov.com/java-collections/index.htmlTutorial on Java's bulit-in data structures, including the
ArrayList
,HashMap
, andSortedMap
classes covered in the CS218 Java Programming and CS216 Data Structures courses -
Red/Black Tree Visualization
https://www.cs.usfca.edu/~galles/visualization/RedBlack.htmlAnimated tutorial from the University of San Francisco demonstrating how red-black trees work. Allows you to insert, delete, and find nodes in a red-black tree.
-
Sorting @ VisuAlgo
https://visualgo.net/en/sortingTutorials and examples of several sorting algorithms. Uses both visualizations and synchronized code snippets to help you better understand how the algorithms work.
-
Sorting: Bubble Sort Algorithm (mycodeschool)
https://www.youtube.com/watch?v=Jdtq5uKz-w4Video tutorial explaining in detail how the bubble sort algorithm works. Builds up the pseudocode for the algorithm, as well as discusses the time complexity of the algorithm in Big-O notation.
-
Sorting: Quicksort Algorithm (Joe James)
https://www.youtube.com/watch?v=Fiot5yuwPAgVideo tutorial by Joe James that walks you through how the basic quicksort algorithm works, as well as the Java implementation of quicksort. Also discusses the pros and cons of choosing a certain array items as pivot values.