Skip to content

mantle-bearer/cs50

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 

Repository files navigation

CS50 - Introduction to Computer Science

This repository contains my code and projects from Harvard's CS50: Introduction to Computer Science program (2020).

About CS50

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.

Repository Structure

This repository is organized by problem sets and tracks, with each branch containing solutions to specific assignments:

2020 Problem Sets

Week 1 - C

  • hello - A simple "Hello, World!" program in C
  • mario/less - Building Mario's pyramid using C
  • cash - Greedy algorithms for making change

Week 2 - Arrays

  • readability - Determining text readability levels
  • caesar - Caesar cipher encryption

Week 3 - Algorithms

  • plurality - Plurality vote election simulation
  • runoff - Runoff election simulation

Week 4 - Memory

  • filter/less - Image filtering and manipulation
  • recover - Recovering JPEG files from memory

Week 5 - Data Structures

  • speller - Spell-checker using hash tables

Week 6 - Python (Sentimental)

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

Week 7 - SQL

  • movies - SQL queries on movie database
  • houses - Harry Potter house assignments

Week 8 - Web Track

  • homepage - Personal homepage using HTML, CSS, and JavaScript
  • finance - Stock trading web application

Other Projects

  • dna - DNA sequence matching
  • project - Final project
  • scratch - Scratch programming project

2022 Problem Sets

Python Track

  • indoor - Indoor voice text conversion
  • playback - Playback speed text manipulation

Technologies Used

  • 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

How to Navigate

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/playback

Academic Honesty

This 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.

License

This is student coursework. All problem specifications are © Harvard University.


Course: CS50: Introduction to Computer Science
Institution: Harvard University
Year: 2020

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages