JamCoders Lecture 1: Introduction
Boaz�Barak
July 2022, UWI, Jamaica
Thank you!
Chronixx
Survival and Flourishing Fund
Who am I
The team
Gunjan Mansingh
Week 2
Week 3
Jelani Nelson
Week 4
Timnit Gebru
Lecturers:
Organizers:
Gunjan, Jelani and
Ra Bacchus
Joel Beazer
Daniel Fokum
Elecia Myers
TAs
Bryan Baker
Joel Beazer
Michael Girma
Jabari Hastings
Tyler Hou
Bereket Molla
Annamira O’Toole
Orr Paradise
Anakai Richards
Nadia Sharp
Elijah Tai
Natnael Teshome
Why Computer Science?
“We are known for our athletes, music, and culture. Now we must become known for being innovators and creators in science and technology”
Why Algorithms?
PageRank Algorithm
Fast algorithm to find which pages have more links pointing to them.
The foundation for Google
Back propagation algorithm
Compute faster derivatives of Neural Network
Responsible for the “Deep Learning” revolution.
Consistent Hashing Data Structure
New data structure to store web pages on servers for faster delivery
200+ Terrabits per second
(Stream 200 Million movies simultaneously)
Compressed Sensing
New algorithm to recover images from a tiny number of measurements.
What this course is about
Algorithms and Data Structures – the ❤️ of computer science.
Some programming in
What this course is not about
How to build a website/ app / use latest in-fashion tool
Let’s start
Computational Task
Input
Output
[17,5,3,12,27]
Algorithm: A precise set of instruction how to obtain output from the input
Minimum element:
Exercise: Write down instructions for minimum element
3
Minimum Element
Instructions:
variables
Define a function
input
input
output
function
output
loop
if statement
Length of list L
Element of L at position 0 (= first)
Element of L at position i (= i+1th)
Variables
Store data
Operations
Act on data
Control
Decide when to act