/cs50

Track my progress, keep some of the code and gather notes from CS50's Introduction to Computer Science

Primary LanguageC

CS50

This repo is to track progress, and gather notes from CS50's Introduction to Computer Science.

Blog posts 📝


ide.cs50.io is fantastic for getting started with CS50, but I wanted to have some of my code in this repo, and to run these projects in my local terminal. Here's an approach to that:

Run locally

  • Install cs50/libcs50
  • Compile with for example gcc -lcs50 -o recursion recursion.c
  • Run program ./recursion


Progress

Week 0 Scratch 😺

  • Lecture
  • Problem set 0

Week 1 C

  • Lecture
  • Shorts: Data Types, Operators, Conditional Statements, Loops, Command Line
  • Problem set 1: Hello, Mario, Cash, Credit

Week 2 Arrays

  • Lecture
  • Shorts: Functions, Variables and Scope, Arrays, Command Line Arguments
  • Problem set 2: Readability, Caesar

Week 3 Algorithms

  • Lecture
  • Shorts: Linear Search, Binary Search, Bubble Sort, Selection Sort, Insertion Sort, Recursion, Merge Sort
  • Lab 3
  • Problem set 3: Plurality, Runoff

Week 4 Memory

  • Lecture
  • Shorts: Hexadecimal, Pointers, Defining Custom Types, Dynamic Memory Allocation, Call Stacks, File Pointers
  • Lab 4: Volume
  • Problem set 4: Filter, Recover

Week 5 Data Structures

  • Lecture
  • Shorts: Data Structures, Singly-Linked Lists, Hash Tables, Tries
  • Lab 5
  • Problem set 5: Speller

Week 6 Python

  • Lecture and Shorts: Python
  • Lab 6: World Cup
  • Problem set 6: Mario, Cash, Credit, Readability, DNA

Week 7 SQL

  • Lecture and Shorts: SQL
  • Lab 7: Songs
  • Problem set 7: Movies, Fiftyville

Week 8 HTML, CSS, JavaScript

  • Lecture
  • Shorts: Internet Primer, IP, TCP, HTTP, HTML, CSS, JavaScript, DOM
  • Lab 8
  • Problem set 8

Week 9 Flask

  • Lecture
  • Shorts: Flask, Ajax
  • Lab 9
  • Problem set 9: C$50 Finance

Week 10 Ethics

  • Lecture & Lab

Final Project

  • Wanderlust! A personal travel journal — using JavaScript and 9 years of data from my Untappd account — to stroll down memory lane of past trips. github.com/elisabethirgens/wanderlust

CS50 certificate