Visualizing Algorithms

Sort and Search Algorithms

This free project is part of the liveProject series Visualizing Algorithms.
prerequisites
basic Java • simple data structures • basic debugging
skills learned
simple data structures in Java (Processing) • selection sort and quick sort algorithms • sequential and binary search algorithms
Yu Zhang and Mathias Funk
1 week · 8-12 hours per week · ADVANCED
filed under

placing your order...

Don't refresh or navigate away from the page.
This free project is part of the liveProject series Visualizing Algorithms. explore series
Check your email for instructions on accessing Sort and Search Algorithms (liveProject)
continue shopping
go to cart

Look inside
In this liveProject, you’ll explore the basics of sort and search algorithms. You’ll begin by sorting a simple data structure with the “selection sort” algorithm, then use the state-of-the-art quicksort algorithm. You’ll use the Processing platform to visualize every step, before finally programming a binary search function and visualizing the search process on your sorted data structures.

project authors

Mathias Funk
Dr. Mathias Funk is an Associate Professor in the Future Everyday group in the Department of Industrial Design at the Eindhoven University of Technology. He has a background in Computer Science and a Ph.D. in Electrical Engineering from Eindhoven University of Technology. Since 2011, he has taught creative programming, computational prototyping, and designing with data and connectivity, and built tools for design researchers.
Yu Zhang
Dr. Yu Zhang has a background in fine arts and design. Her Ph.D. research investigates the theory and artistic practice of interactive technologies for public, large-scale installations. As a researcher and artist, she approaches visual art with mixed reality installations and projections, sensor-based interactives, and computational arts. She has been teaching design and art in international workshops and higher education for over ten years.

prerequisites

This liveProject is for software developers, tech educators, and aspiring programmers who know the basics of Java programming. Some experience with Processing will be helpful, but is not required. To begin this liveProject you will need to be familiar with:

TOOLS
  • Basic Java skills such as variables and functions, control structures, if statements, and loops
TECHNIQUES
  • Simple data structures
  • Simple object-oriented programming
  • Basic debugging using print statements and the Processing console

you will learn

This liveProject is an ideal preparation for programming interviews, whiteboarding exercises, computer science studies, and visual communication skill improvement. You’ll deepen your programming skills with a better understanding of common algorithms.

  • Simple data structures in Java (Processing)
  • Selection sort and quick sort algorithms
  • Sequential and binary search algorithms

features

Self-paced
You choose the schedule and decide how much time to invest as you build your project.
Project roadmap
Each project is divided into several achievable steps.
Get Help
While within the liveProject platform, get help from other participants.
Compare with others
For each step, compare your deliverable to the solutions by the author and other participants.
RECENTLY VIEWED