CS61B Fall 2022
This is a place, where I share my solutions of labs and projects that are included in CS61B, Fall 2022 course by UC Berkeley. I might add (digitize) my notes at a later time.
CS 61B: Data Structures
Official course site: https://fa22.datastructur.es/index.html
My GitHub repo including all the solutions: https://github.com/tomthestrom/cs61b
About
I decided to take this course in order to learn about some basic data structures and algorithms.
The first third of the course deals with introducing Java while going through List Abstract Data Type - SLL, DLL, AL and implementing unit tests (timing and randomized). While not being a Java class, Java is explained to the extent that's needed to be able to successfully complete the assignments.
The class as a whole is not that programming heavy in my opinion (except for Project 3), but you get to implement and practice what's being explained during the lectures.
Quick Intro to Assignments (aka, some highlights):
Implementing various types of Lists - notably a Deque in Project 1 - the basic ADT for a GuitarHero Simulator:
The Deque was implemented in 2 ways.
using a Doubly Linked List with a sentinel node
using a circular array - the first mindblowing experience :)
Disjoined Sets - implementing a Percolation Simulator in Homework 2.
Trees - concept used in multiple places - Implemented a BSTMap in Lab 07.
HashMaps - one of the most used datastructures - implemented in Lab 08.
Graphs - implementing a Graph as an underlying data structure for WordNet in Project 2b.
A Game Generator in Project 3 - implemented however you'd like.
Phase 2: Add Interactivity - not implemented yet.
Last updated