This is CS50 · log 2 n. pseudocode. 1 Pick up phone book 2 Open to middle of phone book 3 Look at...

145
This is CS50

Transcript of This is CS50 · log 2 n. pseudocode. 1 Pick up phone book 2 Open to middle of phone book 3 Look at...

  • This is CS50

  • This is CS50

  • 2/3of CS50 students have never taken CS before

  • what ultimately matters in this course is not so much where you end up relative to your classmates but where you end up relative to yourself when you began

  • input → → output

  • representation

  • decimal

  • base-10

  • 0 1 2 3 4 5 6 7 8 9

  • 0 1

  • base-2

  • binary

  • 0 1

  • bits

  • 0

  • 1

  • 0 1

  • 0 1 2 3 4 5 6 7 8 9

  • 123

  • 1231

  • 12310 1

  • 123100 10 1

  • 123100 10 1

    100 × 1

  • 123100 10 1

    100 × 1 10 × 2+

  • 123100 10 1

    100 × 1 10 × 2 1 × 3+ +

  • 123100 10 1

    100 20 3+ +

  • 123

  • # # #100 10 1

  • # # #102 101 100

  • # # #22 21 20

  • # # #4 2 1

  • 0004 2 1

  • 0014 2 1

  • 0104 2 1

  • 0114 2 1

  • 1004 2 1

  • 1014 2 1

  • 1104 2 1

  • 1114 2 1

  • This is CS50

  • A

  • 65

  • 01000001

  • ASCII

  • ... A B C D E F G H I ...

    ... 65 66 67 68 69 70 71 72 73 ...

  • 72 73 33

  • H I

    72 73 33

  • H I !

    72 73 33

  • H I !

    01001000 01001001 00100001

  • bytes

  • Unicode

  • 128514

  • 000000011111011000000010

  • RGB

  • 72 73 33

  • 72 73 33

  • http://www.youtube.com/watch?v=sz78_07Xg-U

  • input → → output

  • algorithms

  • This is CS50

  • +1-949-468-2750

  • http://www.youtube.com/watch?v=-yTRajiUi5s

  • http://www.youtube.com/watch?v=F5LZhsekEBc

  • n

  • n/2n

  • n/2n

  • n/2n

  • n/2n

  • n/2n

  • n/2n

    log2 n

  • pseudocode

  • 1 Pick up phone book2 Open to middle of phone book3 Look at page4 If person is on page5 Call person6 Else if person is earlier in book7 Open to middle of left half of book8 Go back to line 39 Else if person is later in book10 Open to middle of right half of book11 Go back to line 312 Else13 Quit

  • 1 Pick up phone book2 Open to middle of phone book3 Look at page4 If person is on page5 Call person6 Else if person is earlier in book7 Open to middle of left half of book8 Go back to line 39 Else if person is later in book10 Open to middle of right half of book11 Go back to line 312 Else13 Quit

  • 1 Pick up phone book2 Open to middle of phone book3 Look at page4 If person is on page5 Call person6 Else if person is earlier in book7 Open to middle of left half of book8 Go back to line 39 Else if person is later in book10 Open to middle of right half of book11 Go back to line 312 Else13 Quit

  • 1 Pick up phone book2 Open to middle of phone book3 Look at page4 If person is on page5 Call person6 Else if person is earlier in book7 Open to middle of left half of book8 Go back to line 39 Else if person is later in book10 Open to middle of right half of book11 Go back to line 312 Else13 Quit

  • 1 Pick up phone book2 Open to middle of phone book3 Look at page4 If person is on page5 Call person6 Else if person is earlier in book7 Open to middle of left half of book8 Go back to line 39 Else if person is later in book10 Open to middle of right half of book11 Go back to line 312 Else13 Quit

  • ● functions● conditions● Boolean expressions● loops

  • ● functions● conditions● Boolean expressions● loops● variables● threads● events● ...

  • #include

    int main(void){ printf("hello, world\n");}

  • input → → outputalgorithms

  • → → algorithms → output

  • → → → output

  • → →

  • input → → outputalgorithms

  • → → → outputalgorithms

  • → → → output

  • → →

  • input → → outputalgorithms

  • → → → outputalgorithms

  • → → → output

  • → →

  • → →

  • → → →

  • abstraction

  • This is CS50