This repository contains my code and projects from Harvard's CS50: Introduction to Computer Science program (2020).
CS50 is Harvard University's introduction to the intellectual enterprises of computer science and the art of programming. This course teaches students how to think algorithmically and solve problems efficiently, covering topics such as abstraction, algorithms, data structures, encapsulation, resource management, security, software engineering, and web development.
This repository is organized by problem sets and tracks, with each branch containing solutions to specific assignments:
- hello - A simple "Hello, World!" program in C
- mario/less - Building Mario's pyramid using C
- cash - Greedy algorithms for making change
- readability - Determining text readability levels
- caesar - Caesar cipher encryption
- plurality - Plurality vote election simulation
- runoff - Runoff election simulation
- filter/less - Image filtering and manipulation
- recover - Recovering JPEG files from memory
- speller - Spell-checker using hash tables
Python implementations of earlier C problems:
- sentimental/hello - Hello World in Python
- sentimental/mario/less - Mario's pyramid in Python
- sentimental/cash - Cash change calculator in Python
- sentimental/readability - Readability analyzer in Python
- movies - SQL queries on movie database
- houses - Harry Potter house assignments
- homepage - Personal homepage using HTML, CSS, and JavaScript
- finance - Stock trading web application
- dna - DNA sequence matching
- project - Final project
- scratch - Scratch programming project
- indoor - Indoor voice text conversion
- playback - Playback speed text manipulation
- C - Low-level programming, memory management, and algorithms
- Python - High-level programming and data processing
- SQL - Database queries and management
- HTML/CSS/JavaScript - Web development
- Flask - Web framework for Python applications
Each problem set is stored in its own branch. To view a specific assignment:
git checkout cs50/problems/2020/x/[problem-name]For example:
git checkout cs50/problems/2020/x/mario/less
git checkout cs50/problems/2020/x/speller
git checkout cs50/problems/2022/python/playbackThis repository is made public for portfolio purposes. If you are currently taking CS50, please adhere to the course's academic honesty policy and do not copy these solutions.
This is student coursework. All problem specifications are © Harvard University.
Course: CS50: Introduction to Computer Science
Institution: Harvard University
Year: 2020