An open API service indexing awesome lists of open source software.

https://github.com/thegoldenpatrik1/class-projects

Archive of some C/C++ class projects
https://github.com/thegoldenpatrik1/class-projects

c cpp dsa operating-system

Last synced: 8 months ago
JSON representation

Archive of some C/C++ class projects

Awesome Lists containing this project

README

          

# Class Projects

This repository serves as an archive of a few of the class projects that I've worked on while achieving my Computer Science degree. Most of the programs are written in either [C](https://en.wikipedia.org/wiki/C_\(programming_language\)) or [C++](https://en.wikipedia.org/wiki/C++). Below is a brief description of each course and the projects I've included in this repository.

### CS-201

**Data Structures and Algorithms**: an introduction to the design, implementation, and uses for different data structures and algorithms, in order to produce fast code.

- **Homework 0** reads a file of movie data and efficiently creates two collections, one sorted by name and one by year.
- **Homework 1** implements heap sort and quick sort and compares their performance with `std::sort`.
- **Homework 2** reads a file of words, in order to determine the number of times each word appears in the input and print the words, ordered by count.
- **Homework 3** reads a file of movie data and allows for efficient search by either movie name or actor name.
- **Homework 4** implements BFS and DFS using a Graph data structure.

### CS-300

**Operating Systems**: an introduction to the programming concepts behind most modern operating systems, including shells, processes, threads, and memory management.

- **Project 1** spawns a basic shell process that can execute commands and create child processes.
- **Project 2** is a virtual memory manager with a TLB, page table, page replacement, physical address space, and backing store.
- **Project 3** solves a classic race condition problem using mutexes.
- **Project 4** is an office hours thread-waiting problem, implemented using both semaphores and condition variables.