1 00:00:00,000 --> 00:00:00,479 2 00:00:00,479 --> 00:00:10,830 >> [Παίζει μουσική] 3 00:00:10,830 --> 00:00:12,080 [MUSIC - Rossini, "RANZ DES Vaches "ΑΠΟ WILLIAM TELL] 4 00:00:12,080 --> 00:00:24,222 5 00:00:24,222 --> 00:00:25,472 >> [MUSIC - THE ENGLISH BEAT, "ΜΑΡΤΙΟΥ Των περιστρεφόμενων ΑΡΧΗΓΩΝ "] 6 00:00:25,472 --> 00:02:24,538 7 00:02:24,538 --> 00:02:31,510 >> [Χειροκροτήματα και επευφημίες] 8 00:02:31,510 --> 00:02:33,520 >> DAVID MALAN: Έτσι, αυτό είναι CS50. 9 00:02:33,520 --> 00:02:34,730 Το όνομά μου είναι David Malan. 10 00:02:34,730 --> 00:02:39,250 Και το 73% από εσάς δεν έχουν καμία προηγούμενη εμπειρία με την επιστήμη των υπολογιστών, 11 00:02:39,250 --> 00:02:41,300 σε αντίθεση με ό, τι μπορείτε να σκεφτείτε. 12 00:02:41,300 --> 00:02:45,290 Μέχρι σήμερα νομίζαμε ότι θα τσιπ μακριά εκείνη την έλλειψη εξοικείωσης, αλλά και 13 00:02:45,290 --> 00:02:48,970 να σας δώσει μια αίσθηση, για όσους από εσάς με μεγαλύτερη άνεση, η οποία κατευθύνσεις 14 00:02:48,970 --> 00:02:50,550 μπορείτε να πάτε αυτό το εξάμηνο. 15 00:02:50,550 --> 00:02:51,890 >> Ας ξεκινήσω με αυτό. 16 00:02:51,890 --> 00:02:55,490 Δεν έχω πραγματικά καμία ιδέα για το τι υπάρχει στο εσωτερικό της έναν υπολογιστή, ακόμη και αν, όπως και εσείς, 17 00:02:55,490 --> 00:02:56,780 το χρησιμοποιούν κάθε μέρα. 18 00:02:56,780 --> 00:03:00,000 Αλλά είναι κάποιο είδος του κιβωτίου, και υπάρχει δεν είναι πολλές εισόδους σε αυτό. 19 00:03:00,000 --> 00:03:01,350 Ελάχιστα, υπάρχει, τι; 20 00:03:01,350 --> 00:03:03,120 Πιθανώς ένα καλώδιο ρεύματος. 21 00:03:03,120 --> 00:03:06,640 >> Και μάλιστα με αυτό το ένα συστατικό, ηλεκτρικής ενέργειας, φαίνεται να είναι σε θέση να 22 00:03:06,640 --> 00:03:09,490 κάνει αρκετά ένα κομμάτι αυτές τις μέρες. 23 00:03:09,490 --> 00:03:12,130 Αλλά στο τέλος της ημέρας, μπορούμε πρέπει να εκπροσωπούν τα πράγματα 24 00:03:12,130 --> 00:03:12,860 ότι νοιαζόμαστε για. 25 00:03:12,860 --> 00:03:15,240 Πρέπει να αντιπροσωπεύουν πληροφορίες σε κάποια μορφή. 26 00:03:15,240 --> 00:03:18,365 Και είστε πιθανώς τουλάχιστον αόριστα εξοικειωμένοι με την ιδέα με δυαδικά ή 27 00:03:18,365 --> 00:03:21,370 bits ή τον άλλο τρόπο, οι υπολογιστές μειώνεται σε μηδενικά και μονάδες. 28 00:03:21,370 --> 00:03:26,320 Αλλά μπορούμε να αγκαλιάσει ότι και τουλάχιστον βάλετε ένα κομμάτι του φωτός σε αυτό; 29 00:03:26,320 --> 00:03:28,880 >> Έτσι έχω αυτά τα μικρά λάμπες γραφείου εδώ. 30 00:03:28,880 --> 00:03:30,450 Έχω μια ηλεκτρική πρίζα εδώ. 31 00:03:30,450 --> 00:03:33,930 Και Πάω να προτείνω αυτό το εσωτερικό του υπολογιστή μου είναι τουλάχιστον ένα από τα 32 00:03:33,930 --> 00:03:37,300 αυτά τα πράγματα, κάτι που μπορεί να να ενεργοποιηθεί ή να απενεργοποιηθεί. 33 00:03:37,300 --> 00:03:40,200 Σε αυτήν την περίπτωση, είναι πράγματι μια λάμπα γραφείου, αλλά σε χαμηλότερο επίπεδο, είναι κάτι 34 00:03:40,200 --> 00:03:41,500 ονομάζεται ένα τρανζίστορ. 35 00:03:41,500 --> 00:03:44,730 >> Αλλά στον κόσμο μας, είναι μια λάμπα γραφείου, έτσι ώστε Πάω να προχωρήσει και να συνδέσετε αυτό 36 00:03:44,730 --> 00:03:47,990 σε ηλεκτρική ενέργεια μου εδώ. 37 00:03:47,990 --> 00:03:52,970 Και εγώ ισχυρίζομαι ότι η χρήση αυτή η απλή, απλή συσκευή, αυτό το απλό διακόπτη, I 38 00:03:52,970 --> 00:03:54,850 μπορεί να αντιπροσωπεύουν πληροφορίες. 39 00:03:54,850 --> 00:03:58,090 Για παράδειγμα, αυτή τη στιγμή, είμαι εκπροσωπούν τίποτα, έτσι δεν είναι; 40 00:03:58,090 --> 00:04:01,820 Είμαι εκπροσωπούν αυτό που θα καλέσω 0 ή ψευδής, το αντίθετο από κάτι 41 00:04:01,820 --> 00:04:03,130 στην πραγματικότητα να είναι παρόντες. 42 00:04:03,130 --> 00:04:07,050 Αλλά αν απλώς γυρίστε το διακόπτη, τώρα έχω αντιπροσώπευε 1. 43 00:04:07,050 --> 00:04:10,720 Έτσι, με αυτό το πολύ απλό κομμάτι μνήμης, αν θέλετε, μπορώ να εκπροσωπώ 44 00:04:10,720 --> 00:04:11,450 πληροφοριών. 45 00:04:11,450 --> 00:04:14,350 >> Τώρα, δυστυχώς, ο υπολογιστής μου δεν μπορεί να κάνει όλα αυτά πολύ. 46 00:04:14,350 --> 00:04:17,430 Μπορεί να αντιπροσωπεύει μόνο δύο τιμές σε όλο τον κόσμο - 47 00:04:17,430 --> 00:04:18,620 0 ή 1. 48 00:04:18,620 --> 00:04:21,839 Αλλά αυτό είναι μια προφανής λύση, τώρα, Αν θέλουμε να επεκτείνουμε υπολογιστή μας 49 00:04:21,839 --> 00:04:25,120 μνήμη και αντιπροσωπεύουν περισσότερο όχι μόνο 0 και 1; 50 00:04:25,120 --> 00:04:27,060 >> Λοιπόν, ας τραβήξει άλλο τέτοιο κομμάτι. 51 00:04:27,060 --> 00:04:30,260 Ας αρπάξει ένα άλλο διακόπτη, ένα άλλο τρανζίστορ, ωστόσο θα θέλατε να 52 00:04:30,260 --> 00:04:31,130 το σκεφτώ. 53 00:04:31,130 --> 00:04:34,170 Επιτρέψτε μου να προχωρήσει και να συνδέσετε αυτό στον υπολογιστή μου. 54 00:04:34,170 --> 00:04:38,270 Και Πάω να διεκδικήσει, τώρα, ότι με την με λίγο περισσότερη ηλεκτρική ενέργεια και 55 00:04:38,270 --> 00:04:42,290 στροφή περισσότερο από αυτούς τους διακόπτες και να μακριά, μπορεί να αντιπροσωπεύει περισσότερες από αυτές τις 56 00:04:42,290 --> 00:04:43,020 πληροφοριών. 57 00:04:43,020 --> 00:04:44,660 >> Μέχρι τώρα, αυτό είναι 1. 58 00:04:44,660 --> 00:04:48,120 Αν θέλω να αντιπροσωπεύουν τώρα 2, θα μπορούσα να κάνω αυτό. 59 00:04:48,120 --> 00:04:51,510 Αλλά συνήθως, σύμβαση, όπως θα τελικά να δούμε, θα πρέπει να το κάνω αυτό. 60 00:04:51,510 --> 00:04:55,260 Έτσι, αυτό είναι 0, αυτό είναι 1. 61 00:04:55,260 --> 00:04:56,720 Αυτό θα είναι 2. 62 00:04:56,720 --> 00:04:59,920 Και όπως ήταν αναμενόμενο, αυτό θα είναι 3. 63 00:04:59,920 --> 00:05:02,610 >> Έτσι, με αυτόν τον τρόπο, ακόμα, μπορεί να μετράμε ακόμα περισσότερο; 64 00:05:02,610 --> 00:05:06,500 Αν πάρω ένα τρίτο κομμάτι, το ένα τρίτο διακόπτη, ποιο είναι το μεγαλύτερο αριθμό μπορώ τώρα 65 00:05:06,500 --> 00:05:09,720 μετρήσει μέχρι από 0; 66 00:05:09,720 --> 00:05:12,020 Έτσι, 7 αν είμαι ξεκινώντας από το 0, έτσι δεν είναι; 67 00:05:12,020 --> 00:05:15,980 Γιατί αν ενεργοποιήσετε το φως και στην πραγματικότητα συνδέσετε αυτό το τρίτο και τελευταίο 68 00:05:15,980 --> 00:05:20,090 φως σε ηλεκτρική πρίζα μου εδώ, τότε έχω τη δυνατότητα να εκπροσωπεί 69 00:05:20,090 --> 00:05:24,930 οποιαδήποτε από τις δύο τιμές εδώ, δύο τιμές εδώ, δύο τιμές εδώ - 70 00:05:24,930 --> 00:05:32,610 και γι 'αυτό μπορεί να αντιπροσωπεύει 2 φορές 2 φορές 2, ή οκτώ πιθανές τιμές. 71 00:05:32,610 --> 00:05:36,340 Και αν αρχίσω λογιστικής σε 0, οπότε αυτό είναι 0, 1, 2, 3, 4, 5, 6, 7. 72 00:05:36,340 --> 00:05:37,480 >> Έτσι, αυτή η δυαδική. 73 00:05:37,480 --> 00:05:39,420 Είναι πραγματικά τόσο απλό. 74 00:05:39,420 --> 00:05:41,930 Και θα έλεγα ότι αυτό είναι στην πραγματικότητα αρκετά εξοικειωμένοι με τα περισσότερα 75 00:05:41,930 --> 00:05:43,180 ο καθένας σε αυτό το δωμάτιο. 76 00:05:43,180 --> 00:05:45,710 Επιτρέψτε μου να προχωρήσει και να ανοίξει ένα μικρό επεξεργαστή κειμένου εδώ. 77 00:05:45,710 --> 00:05:49,040 >> Και ίσως θυμάστε από το δημοτικό σχολείο ότι είχαμε τα πράγματα όπως τα εκατοντάδες 78 00:05:49,040 --> 00:05:51,970 θέση, η θέση των δεκάδων, και αυτά μέρος. 79 00:05:51,970 --> 00:05:55,040 Και υπενθυμίζουν ότι αν είχε κάποια δεκαδικά αριθμό, σαν κάτι τυχαίο 80 00:05:55,040 --> 00:05:59,470 όπως το 123, θα κάνατε ουσιαστικά γράφουν ότι με τη μορφή 81 00:05:59,470 --> 00:06:00,450 αυτών των τριών στηλών. 82 00:06:00,450 --> 00:06:04,070 Και γιατί είναι 1, 2, 3, τι γνωρίζουμε ως 123; 83 00:06:04,070 --> 00:06:11,220 Λοιπόν, στην αριστερή στήλη, έχουμε ένα 100 συν δύο 10s, έτσι ώστε να είναι 120, 84 00:06:11,220 --> 00:06:14,250 συν τρεις 1s, έτσι ώστε να είναι 123. 85 00:06:14,250 --> 00:06:17,990 >> Τώρα αυτός ο κόσμος που μόλις φωτίζεται είναι ακριβώς το ίδιο όπως 86 00:06:17,990 --> 00:06:21,150 έχετε εξοικειωθεί με για χρόνια, εκτός από τώρα, στήλες μας 87 00:06:21,150 --> 00:06:22,060 δεν είναι δυνάμεις του 10. 88 00:06:22,060 --> 00:06:23,780 Είναι απλά δυνάμεις του 2. 89 00:06:23,780 --> 00:06:27,830 Έτσι, λαμβάνοντας υπόψη ότι είναι ο τόπος αυτά, αυτό πρόκειται να είναι η δυάρια μέρος, αυτό είναι 90 00:06:27,830 --> 00:06:29,540 πρόκειται να είναι η θέση τέσσερα. 91 00:06:29,540 --> 00:06:33,260 >> Και επειδή είμαι χρησιμοποιώντας μόνο την απλούστερη των μηχανισμών να γυρίσει τα πράγματα 92 00:06:33,260 --> 00:06:37,100 on και off - ηλεκτρισμός ρέει ή ηλεκτρική ενέργεια δεν ρέει - 93 00:06:37,100 --> 00:06:40,880 Δεν έχω ακριβώς το ίδιο εκφραστικό φάσμα, από 0 έως εννέα. 94 00:06:40,880 --> 00:06:43,270 Εμείς πάμε για να κρατήσει εξαιρετικά απλό σε αυτόν τον κόσμο των υπολογιστών. 95 00:06:43,270 --> 00:06:45,060 Έχω μόνο 0 ή 1 - 96 00:06:45,060 --> 00:06:47,890 εφάπαξ ή σε ψευδείς ή αλήθεια. 97 00:06:47,890 --> 00:06:52,610 >> Και έτσι αυτό που είμαι εκπροσωπούν αυτή τη στιγμή είναι 1, 1, 1, επειδή κάθε ένα από αυτά 98 00:06:52,610 --> 00:06:54,000 φώτα φωτίζεται. 99 00:06:54,000 --> 00:06:59,600 Λοιπόν, αυτό μου δίνει ένα 4 συν ένα 2, οπότε Αυτό είναι 6, συν ένα 1, και αυτό είναι 7. 100 00:06:59,600 --> 00:07:03,450 Και ergo κάνει αυτή τη σειρά των τριών δυφία αντιπροσωπεύουν τον αριθμό 7. 101 00:07:03,450 --> 00:07:06,330 >> Έτσι, όλο αυτό το διάστημα, μέσα σας υπολογιστών, έχουν οποιοδήποτε αριθμό 102 00:07:06,330 --> 00:07:08,090 τρανζίστορ, οποιοδήποτε αριθμό από bits. 103 00:07:08,090 --> 00:07:10,380 Αλλά στο τέλος της ημέρας, μπορούμε μπορεί να αντιπροσωπεύουν πληροφορίες 104 00:07:10,380 --> 00:07:12,560 τόσο απλά όπως αυτό. 105 00:07:12,560 --> 00:07:16,770 Τώρα, δυστυχώς, έχουμε υπολογίζονται μόνο έως 7 σε CS50 μέχρι σήμερα, αλλά 106 00:07:16,770 --> 00:07:18,550 ελπίζουμε ότι μπορούμε να κάνουμε ένα κομμάτι καλύτερο από αυτό. 107 00:07:18,550 --> 00:07:19,550 Και πράγματι μπορούμε. 108 00:07:19,550 --> 00:07:23,570 >> Ας υποθέσουμε ότι εμείς οι άνθρωποι απλά αυθαίρετα αποφάσισε ότι πρόκειται 109 00:07:23,570 --> 00:07:28,750 να συνδέσει αριθμούς όπως 1 και 2, 3, 4, 5, 6, 7, με συγκεκριμένες επιστολές 110 00:07:28,750 --> 00:07:29,410 το αλφάβητο. 111 00:07:29,410 --> 00:07:32,350 Και για ιστορικούς λόγους, Πάω να αρχίσει κάπως αυθαίρετα, αλλά είμαι 112 00:07:32,350 --> 00:07:36,880 πρόκειται να πω, οι άνθρωποι, πρόκειται να αποφασίζει ως πρότυπο, σε παγκόσμιο επίπεδο, που 113 00:07:36,880 --> 00:07:43,200 65 αντιπροσωπεύει τον αριθμό το γράμμα Α. 66 θα εκπροσωπήσει Β. τελεία, τελεία, τελεία. 114 00:07:43,200 --> 00:07:45,140 90 θα αντιπροσωπεύουν το γράμμα Ζ. 115 00:07:45,140 --> 00:07:48,000 >> Και ας υποθέσουμε ότι, αν βάλουμε πραγματικά κάποια σκέψη σε αυτό, θα μπορούσαμε να καταλήξουμε 116 00:07:48,000 --> 00:07:50,860 με αριθμούς για τα θαυμαστικά και πεζά γράμματα, και μάλιστα, 117 00:07:50,860 --> 00:07:52,710 άλλοι άνθρωποι έχουν κάνει αυτό για εμάς. 118 00:07:52,710 --> 00:07:56,410 Μέχρι τώρα είχαμε κομμάτια με τα οποία μπορούμε να αντιπροσωπεύσει τους αριθμούς, τους αριθμούς με τους οποίους 119 00:07:56,410 --> 00:08:00,130 μπορούμε να αναπαραστήσουμε τα γράμματα, και με γράμματα μπορεί τώρα να ξεκινήσετε τη σύνταξη 120 00:08:00,130 --> 00:08:02,650 emails και τους χαρακτήρες εκτύπωση στην οθόνη. 121 00:08:02,650 --> 00:08:05,850 >> Επιτρέψτε μου λοιπόν να καλέσει, αν μπορούσα, οκτώ γενναίοι εθελοντές - 122 00:08:05,850 --> 00:08:09,200 που δεν με πειράζει που εμφανίζονται όχι μόνο την κάμερα, αλλά στο Διαδίκτυο - 123 00:08:09,200 --> 00:08:13,130 να καταλήξει εδώ και αντιπροσωπεύουν οκτώ τέτοιες bits, αντί αυτών των τριών. 124 00:08:13,130 --> 00:08:14,380 Πώς, λοιπόν, για ένα, δύο; 125 00:08:14,380 --> 00:08:16,290 Τι θα λέγατε για τρεις; 126 00:08:16,290 --> 00:08:20,230 Πόσο περίπου τέσσερις υπό το φως μπλε, πέντε για το τέλος; 127 00:08:20,230 --> 00:08:21,250 Σχετικά με κάποιον εδώ; 128 00:08:21,250 --> 00:08:25,320 Έξι μπροστά, επτά μπροστά, και οκτώ μπροστά, καθώς και. 129 00:08:25,320 --> 00:08:29,050 >> Γι 'αυτό ακριβώς έτσι συνέβη να έρθουν προετοιμασμένοι με ένα σωρό από χαρτάκια. 130 00:08:29,050 --> 00:08:34,150 Και σε αυτά τα κομμάτια χαρτιού είναι οι αριθμοί που αντιπροσωπεύουν ό, τι στήλες 131 00:08:34,150 --> 00:08:35,809 εσείς πρόκειται να εκπροσωπήσει. 132 00:08:35,809 --> 00:08:36,740 Έτσι θα είναι - ποιο είναι το όνομά σου; 133 00:08:36,740 --> 00:08:37,570 >> ΦΟΙΤΗΤΗΣ: Άννα Λία. 134 00:08:37,570 --> 00:08:40,370 >> DAVID MALAN: Άννα Λία, σας θα είναι η 128s στήλης. 135 00:08:40,370 --> 00:08:41,059 Είστε; 136 00:08:41,059 --> 00:08:41,510 >> ΣΠΟΥΔΑΣΤΩΝ: Chris. 137 00:08:41,510 --> 00:08:43,620 >> DAVID MALAN: Chris θα είναι η 64S στήλη. 138 00:08:43,620 --> 00:08:44,070 Είστε; 139 00:08:44,070 --> 00:08:44,540 >> ΣΠΟΥΔΑΣΤΩΝ: Dan. 140 00:08:44,540 --> 00:08:46,970 >> DAVID MALAN: Dan θα είναι η 32s στήλη. 141 00:08:46,970 --> 00:08:47,470 >> ΣΠΟΥΔΑΣΤΩΝ: Pramit. 142 00:08:47,470 --> 00:08:49,430 >> DAVID MALAN: Pramit θα είναι η στήλη 16s. 143 00:08:49,430 --> 00:08:50,290 >> ΣΠΟΥΔΑΣΤΩΝ: Lillian. 144 00:08:50,290 --> 00:08:51,904 >> DAVID MALAN: Lillian θα είναι η 8άρια. 145 00:08:51,904 --> 00:08:52,768 >> ΣΠΟΥΔΑΣΤΩΝ: Jill. 146 00:08:52,768 --> 00:08:55,025 >> DAVID MALAN: Jill θα είναι το 4s στήλη. 147 00:08:55,025 --> 00:08:55,400 >> ΣΠΟΥΔΑΣΤΩΝ: Mary. 148 00:08:55,400 --> 00:08:57,000 >> DAVID MALAN: Μαίρη θα είναι οι 2s, και; 149 00:08:57,000 --> 00:08:57,470 >> ΣΠΟΥΔΑΣΤΩΝ: David. 150 00:08:57,470 --> 00:08:59,220 >> DAVID MALAN: David θα είναι το 1s στήλη. 151 00:08:59,220 --> 00:09:02,030 Έτσι, αν εσείς θα μπορούσε να εντείνει λίγο προς τα εμπρός, έτσι ώστε ο καθένας μπορεί να δει. 152 00:09:02,030 --> 00:09:05,370 Αυτό που εσείς δεν βλέπετε είναι ότι στις πίσω από αυτά τα χαρτάκια είναι ένα 153 00:09:05,370 --> 00:09:09,760 μικρό φύλλο εξαπατήσει που είναι έτοιμος να αναθέσει αυτές τις οκτώ bits είτε 154 00:09:09,760 --> 00:09:12,380 σηκώστε το χέρι τους ή όχι σηκώστε το χέρι τους. 155 00:09:12,380 --> 00:09:14,100 Αν το χέρι τους ανεβαίνει, είναι αντιπροσωπεύουν 1. 156 00:09:14,100 --> 00:09:17,120 Αν το χέρι τους παραμένει κάτω, είναι αντιπροσωπεύει μια 0. 157 00:09:17,120 --> 00:09:21,410 >> Εν τω μεταξύ, το κοινό θα πρέπει να είναι είναι σε θέση να καταλάβω, με βάση αυτό το 158 00:09:21,410 --> 00:09:26,490 χαρτογράφηση, τι τρία γράμματα λέξη αυτές τις λαοί είναι έτοιμοι να διευκρινίσει. 159 00:09:26,490 --> 00:09:29,700 Έτσι, σε μια στιγμή, θα πάμε να διαβάστε την πρώτη γραμμή από το πίσω μέρος 160 00:09:29,700 --> 00:09:32,880 σκονάκι σας, και είστε είτε πρόκειται να αυξήσει ή να μην σηκώνετε το χέρι σας. 161 00:09:32,880 --> 00:09:35,710 Εάν είστε 1, θα αυξηθεί, εάν είσαι 0, θα σταθεί εκεί 162 00:09:35,710 --> 00:09:38,594 αδέξια, έτσι απλά. 163 00:09:38,594 --> 00:09:40,386 Go. 164 00:09:40,386 --> 00:09:43,945 Ποιος είναι ο αριθμός, πρώτα απ 'όλα, αυτά τα παιδιά που εκπροσωπούν; 165 00:09:43,945 --> 00:09:47,140 166 00:09:47,140 --> 00:09:48,860 >> 66. 167 00:09:48,860 --> 00:09:49,560 66, έτσι δεν είναι; 168 00:09:49,560 --> 00:09:52,400 Έχουμε 1 στο 64S στήλη, το 1 στην στήλη 2s. 169 00:09:52,400 --> 00:09:56,340 Αυτό μου δίνει 66, έτσι ώστε να εμφανίζεται να εκπροσωπεί Β. Έτσι, 170 00:09:56,340 --> 00:09:57,075 εσείς έχετε γράφονται - 171 00:09:57,075 --> 00:09:58,300 Εντάξει, αυτό είναι αρκετό. 172 00:09:58,300 --> 00:09:59,430 B. 173 00:09:59,430 --> 00:10:01,610 >> Έτσι τώρα ας προχωρήσουμε στην δεύτερη επιστολή μας. 174 00:10:01,610 --> 00:10:03,530 Go. 175 00:10:03,530 --> 00:10:06,860 Ποιος είναι ο πιο γρήγορος στα μαθηματικά εδώ; 176 00:10:06,860 --> 00:10:07,750 Έτσι, 79. 177 00:10:07,750 --> 00:10:11,840 Και πάλι, αν προσθέσουμε όλες τις στήλες στην οποία υπάρχει ένα 1, επί του παρόντος, απλά 178 00:10:11,840 --> 00:10:14,840 όπως κάναμε και στο παρελθόν με τον απλούστερο παραδειγμάτων 7, τώρα 179 00:10:14,840 --> 00:10:16,140 πάρετε τον αριθμό 79. 180 00:10:16,140 --> 00:10:19,910 Η οποία σύμφωνα με τη χαρτογράφηση μας είναι η γράμμα Ω. Έτσι, είμαστε σχεδόν εκεί. 181 00:10:19,910 --> 00:10:22,590 B, Ο. Και τέλος, πάμε. 182 00:10:22,590 --> 00:10:26,420 183 00:10:26,420 --> 00:10:30,120 >> Τι είναι αυτοί αντιπροσωπεύουν τώρα; 184 00:10:30,120 --> 00:10:31,370 Λιγότερο συναίνεση. 185 00:10:31,370 --> 00:10:34,660 186 00:10:34,660 --> 00:10:36,460 Αυτό είναι απλά ένα απόλυτο φύσημα. 187 00:10:36,460 --> 00:10:40,090 Ναι, είναι στην πραγματικότητα 87. 188 00:10:40,090 --> 00:10:40,490 Καλό. 189 00:10:40,490 --> 00:10:44,480 >> Έτσι, αν έχουμε χαρτογραφήσει τώρα ότι πίσω μέχρι - ας αρχίσει καλώντας ASCII διάγραμμα μας, 190 00:10:44,480 --> 00:10:46,450 American Standard Κώδικας για Information Interchange. 191 00:10:46,450 --> 00:10:47,700 Αυτό μας δίνει το γράμμα - 192 00:10:47,700 --> 00:10:51,260 193 00:10:51,260 --> 00:10:54,810 Δεν "bo", αλλά "τόξο". Και αυτό είναι ένα τέλειο cue για σας παιδιά να λάβουν ένα τόξο 194 00:10:54,810 --> 00:10:56,100 και το κεφάλι στην πλάτη. 195 00:10:56,100 --> 00:10:56,980 Σας ευχαριστώ πολύ. 196 00:10:56,980 --> 00:10:57,886 >> [Χειροκρότημα] 197 00:10:57,886 --> 00:10:59,136 >> DAVID MALAN: Μπορείτε να τους κρατήσει. 198 00:10:59,136 --> 00:11:01,850 199 00:11:01,850 --> 00:11:05,942 Αν και στην πραγματικότητα, θα μπορούσε κάποιος να σαν ένα επιτραπέζιο φωτιστικό, επίσης; 200 00:11:05,942 --> 00:11:07,300 >> [HOOT από το κοινό] 201 00:11:07,300 --> 00:11:08,390 >> DAVID MALAN: Επιτραπέζια λάμπα; 202 00:11:08,390 --> 00:11:10,850 >> [Γέλια] 203 00:11:10,850 --> 00:11:11,860 >> DAVID MALAN: Αλήθεια; 204 00:11:11,860 --> 00:11:13,230 Επιτραπέζιες λάμπες για όλους; 205 00:11:13,230 --> 00:11:14,310 Εντάξει. 206 00:11:14,310 --> 00:11:20,990 Έτσι, αρχίζοντας με την πολύ απλούστερη από αρχές, έχουμε τώρα όχι μόνο υπολογίζονται 207 00:11:20,990 --> 00:11:24,750 up από 0 σε όλη τη διαδρομή μέχρι 7, έχουμε Υποτίθεται ότι μόνο με τη ρίψη περισσότερα 208 00:11:24,750 --> 00:11:28,080 bits ή περισσότερα φώτα ή περισσότερα τρανζίστορ σε αυτό το πρόβλημα, μπορούμε να 209 00:11:28,080 --> 00:11:32,680 αντιπροσωπεύουν όλο και μεγαλύτερους αριθμούς, και ergo, όλο και μεγαλύτερες σειρές 210 00:11:32,680 --> 00:11:33,780 αλφάβητα, όπως τα αγγλικά. 211 00:11:33,780 --> 00:11:37,770 Και απλά ας πάρουμε την πίστη για σήμερα ότι εξίσου θα μπορούσαμε να αρχίσουμε να 212 00:11:37,770 --> 00:11:42,220 αντιπροσωπεύουν γραφικά και βίντεο, καθώς και κάθε σειρά άλλων μέσων με τα οποία είμαστε 213 00:11:42,220 --> 00:11:43,610 γνωστό σήμερα. 214 00:11:43,610 --> 00:11:49,240 >> Έτσι, αυτό είναι CS50, και σε αυτή την κατηγορία παράλληλα από σας είναι, και πάλι, πάρα πολλοί 215 00:11:49,240 --> 00:11:53,050 συμμαθητές που έχουν ως ελάχιστη την εμπειρία που έχετε. 216 00:11:53,050 --> 00:11:57,730 Και αυτό το αναφέρω, μόνο και μόνο επειδή είναι αρκετά Συχνά, ακόμη και πολύ πρόσφατα ως ένα από τα 217 00:11:57,730 --> 00:12:01,860 ο καινούριος συμβουλεύει εκδηλώσεις και σε δευτεροετής φοιτητής περασμένη άνοιξη παροχή συμβουλών 218 00:12:01,860 --> 00:12:06,420 εκδήλωση, συχνά ακούμε φοιτητές αποποιούνται όταν έρχονται στο τραπέζι CS, καλά, 219 00:12:06,420 --> 00:12:10,070 Έχω σκεφτεί για τη λήψη αυτό intro τάξη, αλλά δεν είμαι πραγματικά μια 220 00:12:10,070 --> 00:12:11,120 πρόσωπο του υπολογιστή. 221 00:12:11,120 --> 00:12:13,220 Ή, αλλά ο καθένας σίγουρα ξέρει περισσότερα από εμένα. 222 00:12:13,220 --> 00:12:17,340 Και έβαλα αυτό στο μεγαλύτερο γραμματοσειράς δυνατόν, να μεταφέρω αυτό το μήνυμα που 223 00:12:17,340 --> 00:12:18,730 αυτό δεν είναι στην πραγματικότητα η υπόθεση. 224 00:12:18,730 --> 00:12:21,100 >> Και αν αναρωτιέστε, θα πρέπει να Εγώ, στην πραγματικότητα, να είναι εδώ; 225 00:12:21,100 --> 00:12:25,950 Συνειδητοποιήστε ότι δεν είναι μόνο αυτό το μάθημα του τίτλος Εισαγωγή στην Πληροφορική 226 00:12:25,950 --> 00:12:31,740 Science, είναι Εισαγωγή στην Πληροφορική Επιστήμη Ι. Έτσι, υπάρχει πράγματι 227 00:12:31,740 --> 00:12:33,170 μια δεύτερη τέτοια εισαγωγή. 228 00:12:33,170 --> 00:12:35,390 Έτσι, δεν είστε, στην πραγματικότητα, σε λάθος μέρος. 229 00:12:35,390 --> 00:12:39,000 Και στους στόχους που έχω για σήμερα είναι για να κατευνάσει σε οποιεσδήποτε τέτοιες ανησυχίες 230 00:12:39,000 --> 00:12:42,430 θα μπορούσε να έχει, αλλά και να ζωγραφίσει ένα εικόνα του τι είναι στο κατάστημα για 231 00:12:42,430 --> 00:12:45,720 φοιτητές λιγότερα και πιο άνετη Παρόμοια σε αυτό το μάθημα. 232 00:12:45,720 --> 00:12:49,320 >> Αλλά πρώτα, μια λέξη σε ένα από τα φυλλάδια έχετε σήμερα, μεταξύ των οποίων 233 00:12:49,320 --> 00:12:50,780 είναι μια σειρά από ερωτήσεις. 234 00:12:50,780 --> 00:12:54,290 Ήταν ένα όραμα μας για κάποιο χρονικό διάστημα τώρα να εισαγάγει μια νέα διαβάθμιση 235 00:12:54,290 --> 00:12:57,010 επιλογή σε αυτό το μάθημα - δηλαδή, SAT / ακόρεστων. 236 00:12:57,010 --> 00:13:01,930 Φιλοσοφικά για μένα, είναι πολύ πολύ, πολύ πιο σημαντικό ότι η 237 00:13:01,930 --> 00:13:05,050 μαθητές αυτής της κατηγορίας ασχολούνται με το υλικό, να αμφισβητηθεί από το 238 00:13:05,050 --> 00:13:09,800 υλικό, και ανησυχούν πολύ, πολύ λιγότερο για οι μηχανικοί της πραγματικής σκορ 239 00:13:09,800 --> 00:13:12,590 και βαθμούς επιστολή στο εξάμηνο του τέλος, αλλά να αγκαλιάσει πραγματικά το 240 00:13:12,590 --> 00:13:13,970 πορεία και το υλικό του. 241 00:13:13,970 --> 00:13:18,140 Και πραγματικά αυτό αισθάνεται, γενικότερα, για ό, τι είναι ενδιαφέρον για αυτούς, για 242 00:13:18,140 --> 00:13:21,390 αντιλαμβάνονται την πρόκληση και να ανταμείβεται, αλλά χωρίς το φόβο της αποτυχίας. 243 00:13:21,390 --> 00:13:25,030 >> Και πράγματι, αυτό είναι πάρα πολύ ένα επαναλαμβανόμενο θέμα σε αυτό και άλλες εισαγωγικές 244 00:13:25,030 --> 00:13:28,680 μαθήματα σε άλλους τομείς, που θα πρέπει Αυτό τρόμο, όταν πρόκειται για 245 00:13:28,680 --> 00:13:31,040 βάζοντας τα δάχτυλα των ποδιών ενός ατόμου σε άγνωστα νερά. 246 00:13:31,040 --> 00:13:34,880 Εγώ ο ίδιος, το 1995, ήταν πρωτοετής. 247 00:13:34,880 --> 00:13:37,990 Ήμουν πάρα πολύ συγκεντρωμένοι στο να είναι συγκεντρωτή Gov εδώ. 248 00:13:37,990 --> 00:13:41,060 Και όμως είχα πάντα μεγαλώσει με ένα κομμάτι του ενδιαφέροντος για την επιστήμη των υπολογιστών. 249 00:13:41,060 --> 00:13:42,180 Ήμουν πάντα περίεργος. 250 00:13:42,180 --> 00:13:47,610 >> Αλλά τότε, ακόμη, είχα αυτό τον φόβο ακόμα και την ενίσχυση πόδι σε CS50, τόσο 251 00:13:47,610 --> 00:13:49,420 έτσι ώστε δεν είχα ακόμη κατάστημα το καινούριο έτος. 252 00:13:49,420 --> 00:13:53,460 Και ο μόνος λόγος που έβαλα ένα πόδι στην πόρτα του έτους δευτεροετών φοιτητών ήταν επειδή μου 253 00:13:53,460 --> 00:13:55,340 αφέθηκε να πάρετε επιτυχίας / αποτυχίας. 254 00:13:55,340 --> 00:13:58,920 Αλλά ακόμη και επιτυχίας / αποτυχίας απαιτείται να παίρνω μέχρι το νεύρο για να κλείσετε ραντεβού 255 00:13:58,920 --> 00:14:01,970 με τον καθηγητή Kernehan κατά τη χρονική στιγμή, φέρει αυτό το μεγάλο φύλλο χαρτί, και να ζητήσει 256 00:14:01,970 --> 00:14:04,470 του για την υπογραφή του και του άδεια για να διερευνήσει 257 00:14:04,470 --> 00:14:05,700 αυτά τα άγνωστα νερά. 258 00:14:05,700 --> 00:14:09,030 >> Και αυτό δεν έχει βοηθήσει τα τελευταία χρόνια ότι όταν το κάνετε αυτό σε CS50, όταν 259 00:14:09,030 --> 00:14:12,500 χρησιμοποιείται για να είναι επιτυχίας / αποτυχίας, ομοίως θα δεκάδες ή εκατοντάδες συμμαθητές σας 260 00:14:12,500 --> 00:14:15,970 πρέπει να καταλήξει, Θεός φυλάξοι, κατά τις μπροστά από Sanders με αυτή τη μορφή, που 261 00:14:15,970 --> 00:14:19,520 σε ορισμένες μυαλό αντιπροσωπεύει μια αδυναμία, Τολμώ να πω, για να εκτελέσει 262 00:14:19,520 --> 00:14:20,800 είναι το επίπεδο τους συμμαθητές σας. 263 00:14:20,800 --> 00:14:23,410 Ποια είναι γελοίο, αλλά πιστεύω υπάρχει η νοοτροπία. 264 00:14:23,410 --> 00:14:27,210 Και δεν υπήρξε ποτέ σε αυτή την κουλτούρα της SAT / ακόρεστων, ή επιτυχίας / αποτυχίας περισσότερα 265 00:14:27,210 --> 00:14:30,610 Γενικότερα, σε αυτή την πορεία, ή πραγματικά σε αυτό το πανεπιστήμιο. 266 00:14:30,610 --> 00:14:32,310 >> Έτσι φέτος καταφέραμε να το αλλάξουμε. 267 00:14:32,310 --> 00:14:35,630 Θα ήθελα να είναι εκστατική εξάμηνο του Η κατηγορία αυτή ή περισσότερο έληξε 268 00:14:35,630 --> 00:14:38,700 μέχρι τη λήψη CS50 SAT / ακόρεστων. 269 00:14:38,700 --> 00:14:42,130 Σε ένα χρόνο, θα ήταν υπέροχο αν και σχεδόν όλοι είναι. 270 00:14:42,130 --> 00:14:44,410 Στη συνέχεια ίσως θα λειτουργήσει για βαθμούς επιστολή στο Χάρβαρντ 271 00:14:44,410 --> 00:14:45,480 College γενικότερα. 272 00:14:45,480 --> 00:14:48,900 Αλλά για τώρα, εμείς θα κάνουμε αυτό μέσα μας τη δική του σφαίρα, και θα ήθελα ολόψυχα 273 00:14:48,900 --> 00:14:53,400 σας ενθαρρύνουμε να διαβάσετε αυτές τις ερωτήσεις και ερωτήσεις όπως σας βολεύει, έτσι ώστε να 274 00:14:53,400 --> 00:14:58,000 Ας ελπίσουμε ότι, σε αντίθεση με μένα, δεν θα είναι αρκετά έχουν το ίδιο παράγοντα φόβο, όταν 275 00:14:58,000 --> 00:15:01,040 εξερεύνηση του τι είναι πιθανόν να ένα άγνωστο μέρος. 276 00:15:01,040 --> 00:15:02,786 >> Έτσι τι είναι CS50; 277 00:15:02,786 --> 00:15:06,150 Είναι μια εισαγωγή στην πνευματική επιχειρήσεις του υπολογιστή 278 00:15:06,150 --> 00:15:07,700 επιστήμη και η τέχνη του προγραμματισμού. 279 00:15:07,700 --> 00:15:08,770 Αλλά τι πραγματικά σημαίνει; 280 00:15:08,770 --> 00:15:12,510 >> Λοιπόν, μέχρι στιγμής, μιλήσαμε πολύ σύντομα για την παρουσίαση των πληροφοριών. 281 00:15:12,510 --> 00:15:15,070 Αλλά ας υποθέσουμε ότι πραγματικά θέλουμε να κάνει κάτι με αυτό. 282 00:15:15,070 --> 00:15:17,890 Πρέπει να εισαχθεί η έννοια της Τι θα καλέσουμε έναν αλγόριθμο. 283 00:15:17,890 --> 00:15:21,540 Ένας αλγόριθμος είναι μια διαδικασία, μια διαδικασία, ένα σύνολο οδηγιών για την 284 00:15:21,540 --> 00:15:22,780 να κάνει κάτι. 285 00:15:22,780 --> 00:15:25,620 >> Και ένας αλγόριθμος μπορεί να είναι κάτι εξαιρετικά απλή. 286 00:15:25,620 --> 00:15:28,660 Για παράδειγμα, ένα παράδειγμα με τις οποίες ορισμένα από εσάς μπορεί να είναι εξοικειωμένοι είναι αυτό 287 00:15:28,660 --> 00:15:29,350 πράγμα εδώ. 288 00:15:29,350 --> 00:15:32,510 Έτσι, αυτό το βιβλίο εδώ είναι όλο και ημερομηνία, αλλά μια φορά κι έναν καιρό, 289 00:15:32,510 --> 00:15:34,720 περιείχε ένα σωρό ονόματα και αριθμούς τηλεφώνων. 290 00:15:34,720 --> 00:15:37,710 Και πράγματι, αν ήθελα να βρω κάποιος σε αυτό το βιβλίο του τηλεφώνου - 291 00:15:37,710 --> 00:15:39,800 ας πούμε, κάποιος με το όνομα Mike Smith - 292 00:15:39,800 --> 00:15:43,810 Θα μπορούσα να βρω Mike Smith σε οποιοδήποτε αριθμό με αρκετά απλό τρόπο. 293 00:15:43,810 --> 00:15:47,700 Θα μπορούσα να ξεκινήσω από την αρχή και προχωρήσουμε στην σελίδα 1, δεν είναι εκεί. 294 00:15:47,700 --> 00:15:49,240 Σελίδα 2, δεν είναι εκεί. 295 00:15:49,240 --> 00:15:49,960 Page 3. 296 00:15:49,960 --> 00:15:53,430 Είναι αυτός ο αλγόριθμος, είναι ότι διαδικασία, σωστά; 297 00:15:53,430 --> 00:15:54,620 >> Γι 'αυτό είναι σωστό, έτσι δεν είναι; 298 00:15:54,620 --> 00:15:58,070 Είμαι το είδος του ηλίθιος για να γίνει αυτό σε αυτόν τον τρόπο, αλλά τελικά θα το κάνω 299 00:15:58,070 --> 00:16:02,670 βρείτε το επώνυμο, και ελπίζω Mike Είναι σε αυτό το σημείο, και θα γίνω 300 00:16:02,670 --> 00:16:04,100 γίνεται με τον αλγόριθμο μου. 301 00:16:04,100 --> 00:16:05,440 Αλλά σίγουρα δεν είναι διαισθητική. 302 00:16:05,440 --> 00:16:08,020 Οι περισσότεροι κάθε λογικού ανθρώπου σε αυτό δωμάτιο δεν θα γίνει αυτό. 303 00:16:08,020 --> 00:16:10,180 Τι θα κάνατε; 304 00:16:10,180 --> 00:16:11,480 >> Θα είχα πάει κατ 'ευθείαν στη μέση, έτσι δεν είναι; 305 00:16:11,480 --> 00:16:12,000 Περίπου στη μέση. 306 00:16:12,000 --> 00:16:16,310 Και αντιλαμβάνεστε, ωχ, αυτοί είναι οι κα Έτσι, ο Mike Smith, το επώνυμο είναι Smith, 307 00:16:16,310 --> 00:16:19,050 δεν είναι, σαφώς, στη συνέχεια, στο αριστερό μισό του βιβλίου. 308 00:16:19,050 --> 00:16:21,040 Αυτός πρέπει να είναι προς το S είναι στο σωστό. 309 00:16:21,040 --> 00:16:24,090 Και σε αυτό το σημείο, αν και οι περισσότεροι από εμάς δεν το κάνετε αυτό στην πραγματικότητα, μπορούμε να 310 00:16:24,090 --> 00:16:27,125 κυριολεκτικά δάκρυ αυτό το πρόβλημα στο μισό. 311 00:16:27,125 --> 00:16:27,640 >> [Επευφημίες και χειροκροτήματα] 312 00:16:27,640 --> 00:16:28,950 >> DAVID MALAN: Σας ευχαριστώ. 313 00:16:28,950 --> 00:16:30,150 >> [Επευφημίες και χειροκροτήματα] 314 00:16:30,150 --> 00:16:34,660 >> DAVID MALAN: Μπορείτε να σχίσει κυριολεκτικά αυτό πρόβλημα στη μέση, αφήνοντας με με, 315 00:16:34,660 --> 00:16:36,120 κυριολεκτικά, ένα μισό πρόβλημα τόσο μεγάλο. 316 00:16:36,120 --> 00:16:39,750 Έτσι, αν αυτό το βιβλίο τηλέφωνο ήταν - και μάλλον ήταν - περίπου 1.000 σελίδες, τώρα 317 00:16:39,750 --> 00:16:40,840 είναι μόνο 500. 318 00:16:40,840 --> 00:16:44,710 Αν το κάνω αυτό ξανά και αντιλαμβάνομαι, OH, βλασφημία, πήγα πολύ μακριά, είμαι στην Ts 319 00:16:44,710 --> 00:16:46,480 ενότητα, μπορώ παρόμοια - 320 00:16:46,480 --> 00:16:48,030 μεταφορικά ή κυριολεκτικά - 321 00:16:48,030 --> 00:16:50,260 αντιγράψετε τον τηλεφωνικό κατάλογο - ήταν στην πραγματικότητα πολύ πιο εύκολο εκείνη τη στιγμή. 322 00:16:50,260 --> 00:16:53,610 Μπορώ να σχίσει κυριολεκτικά τον τηλεφωνικό κατάλογο στο μισό, να φεύγω τώρα με 323 00:16:53,610 --> 00:16:55,186 δεν 1000, όχι 500 - 324 00:16:55,186 --> 00:16:56,680 250 σελίδες. 325 00:16:56,680 --> 00:17:00,210 Και μπορώ να πάω 125, και τα μισά από αυτά, και ήμισυ του, και τα μισά από ότι, 326 00:17:00,210 --> 00:17:04,760 μέχρι το τέλος, θα πρέπει να μείνει με μία και μόνο σελίδα. 327 00:17:04,760 --> 00:17:06,430 >> [Γέλια] 328 00:17:06,430 --> 00:17:07,589 >> DAVID MALAN: Αυτό είναι το μέρος Ι αποτύχει σε. 329 00:17:07,589 --> 00:17:10,400 Μια ενιαία σελίδα στην οποία Mike είναι ελπίζουμε. 330 00:17:10,400 --> 00:17:14,630 Τώρα οι διαφορετικοί αλγόριθμοι μπορούν να είδος εκτιμηθεί ή σε 331 00:17:14,630 --> 00:17:15,270 διαφορετικούς τρόπους. 332 00:17:15,270 --> 00:17:17,300 Το πρώτο ήταν πολύ γραμμική, έτσι δεν είναι; 333 00:17:17,300 --> 00:17:18,500 Γυρίστε τη σελίδα, αναζητήστε Mike. 334 00:17:18,500 --> 00:17:19,630 Γυρίστε τη σελίδα, αναζητήστε Mike. 335 00:17:19,630 --> 00:17:20,560 Είναι πολύ γραμμική. 336 00:17:20,560 --> 00:17:23,339 Αν υπάρχει μια σελίδα στο τηλέφωνο βιβλίο, είναι κατά πάσα πιθανότητα πρόκειται να με πάρει 337 00:17:23,339 --> 00:17:27,380 ένα περισσότερο δεύτερη, μία μονάδα του χρόνου, Ωστόσο, είμαστε υπολογισμό του χρόνου. 338 00:17:27,380 --> 00:17:32,470 >> Γι 'αυτό και θα μπορούσε να αντλήσει έτσι αυτή τη γραμμή εδώ, σύμφωνα με την οποία, όπως το μέγεθος του 339 00:17:32,470 --> 00:17:34,700 αυξήσεις πρόβλημα από αριστερά προς τα δεξιά - 340 00:17:34,700 --> 00:17:37,480 τηλεφωνικό μικραίνει σε μεγαλύτερες - 341 00:17:37,480 --> 00:17:41,080 και του χρόνου πρόκειται να αυξηθεί σε τον κατακόρυφο άξονα, το μεγαλύτερο 342 00:17:41,080 --> 00:17:42,030 ο τηλεφωνικός κατάλογος. 343 00:17:42,030 --> 00:17:46,180 Έτσι, n είναι μόνο μια γενική μεταβλητή που επιστήμονες της πληροφορικής χρησιμοποιούν για να εκπροσωπήσει 344 00:17:46,180 --> 00:17:48,210 κάποια αξία, κάποιος αριθμός. 345 00:17:48,210 --> 00:17:50,740 Έτσι, n πρόκειται να αυξηθεί γραμμικά. 346 00:17:50,740 --> 00:17:53,040 Διπλάσιο από το μέγεθος του τηλεφωνικού καταλόγου, είναι πρόκειται να με πάρει διπλάσια 347 00:17:53,040 --> 00:17:54,780 χρόνο, κατά πάσα πιθανότητα, να βρει Mike. 348 00:17:54,780 --> 00:17:56,390 >> Τώρα θα μπορούσα να είμαι έξυπνη γι 'αυτό, έτσι δεν είναι; 349 00:17:56,390 --> 00:17:57,800 Έπαιρνα βαρεθεί γρήγορα. 350 00:17:57,800 --> 00:17:58,910 Θα μπορούσε να γίνει αυτό από δυάρια. 351 00:17:58,910 --> 00:18:01,870 Έτσι, δύο σελίδες, στη συνέχεια, τέσσερις, στη συνέχεια, έξι, οκτώ στη συνέχεια. 352 00:18:01,870 --> 00:18:05,220 Και θα μπορούσα να ξεκινήσω πετούν μέσα από αυτό ένα λίγο πιο γρήγορα, αν και σε μικρό κίνδυνο της 353 00:18:05,220 --> 00:18:09,210 υπέρβαση Mike, αλλά ότι η καμπύλη δεν είναι πρόκειται να είναι όλα αυτά διαφορετικά. 354 00:18:09,210 --> 00:18:12,550 Είναι ακόμα πρόκειται να είναι μια ευθεία γραμμή, αλλά ελαφρώς πιο γρήγορα. 355 00:18:12,550 --> 00:18:13,710 >> Αλλά τι έκανα; 356 00:18:13,710 --> 00:18:15,845 Έκανα πραγματικά κάτι θεμελιωδώς καλύτερα. 357 00:18:15,845 --> 00:18:21,990 Πέτυχα ό, τι θα καλέσουμε λογαριθμική ώρα, ημερολόγιο του n, οπότε αυτό το πράσινο 358 00:18:21,990 --> 00:18:27,730 γραμμή έχει μια πολύ, πολύ, πολύ λιγότερο επίπεδη επιφάνεια σε αυτό. 359 00:18:27,730 --> 00:18:33,050 Και μάλλον, προτείνει, όπως ταξινομήσετε του προσεγγίζει το άπειρο ποτέ τόσο σταδιακά, 360 00:18:33,050 --> 00:18:36,700 ότι θα μπορούσε να πάρει πραγματικά μια 1.000-σελίδα τηλεφωνικό κατάλογο, το διπλάσιο μέγεθος της 361 00:18:36,700 --> 00:18:39,610 το επόμενο έτος - ας υποθέσουμε ότι, επειδή πολλά περισσότεροι άνθρωποι κινούνται στην πόλη. 362 00:18:39,610 --> 00:18:43,250 >> Έτσι, τώρα έχω 2.000 σελίδες, αλλά πώς πολλά περισσότερα βήματα είναι η πιο έξυπνη 363 00:18:43,250 --> 00:18:45,200 αλγόριθμο πρόκειται να πάρει; 364 00:18:45,200 --> 00:18:46,060 Μόνο ένα. 365 00:18:46,060 --> 00:18:48,060 Θέλω να πω, αυτό είναι ένα ισχυρό πράγμα. 366 00:18:48,060 --> 00:18:51,400 Αν πάμε σε 4.000 σελίδες το επόμενο έτος, ότι πρόκειται να με πάρει 367 00:18:51,400 --> 00:18:53,020 μόνο δύο περισσότερα βήματα. 368 00:18:53,020 --> 00:18:56,500 Έτσι, μπορείτε να ρίξει όλο και μεγαλύτερες προβλήματα σε μένα, δεν σε αντίθεση με το διαδίκτυο είναι 369 00:18:56,500 --> 00:18:59,560 ρίχνουν όλο και μεγαλύτερα προβλήματα κάθε μέρα στις Googles και Facebooks της 370 00:18:59,560 --> 00:19:01,590 ο κόσμος, και δεν είναι μια τέτοια μεγάλη υπόθεση. 371 00:19:01,590 --> 00:19:05,840 Επειδή έβαλα περισσότερη σκέψη και φροντίδα σε αλγόριθμος μου με το οποίο να λύσει 372 00:19:05,840 --> 00:19:07,020 προβλήματα αποτελεσματικά. 373 00:19:07,020 --> 00:19:09,260 >> Και πράγματι, αυτό θα είναι ένα από οι στόχοι του μαθήματος. 374 00:19:09,260 --> 00:19:11,230 Θα σας, κατά μήκος του τρόπου, μάθετε πώς να προγραμματίσετε. 375 00:19:11,230 --> 00:19:13,360 Θα μάθετε πώς να προγραμματίσετε το οποιοδήποτε αριθμό των γλωσσών. 376 00:19:13,360 --> 00:19:16,670 Αλλά στο τέλος της ημέρας, η πορεία είναι για την επίλυση των προβλημάτων και να πάρει 377 00:19:16,670 --> 00:19:20,490 καλύτερα στην επίλυση των προβλημάτων - και, όπως στην περιπτώσεις όπως αυτή, την επίλυση προβλημάτων 378 00:19:20,490 --> 00:19:22,030 πιο αποτελεσματικά. 379 00:19:22,030 --> 00:19:23,990 >> Τώρα, μέχρι στιγμής, έχουμε κάνει αυτό αρκετά διαισθητικά. 380 00:19:23,990 --> 00:19:27,420 Ας εισαγάγει κάτι αρκετά γενικά ονομάζεται ψευδοκώδικα. 381 00:19:27,420 --> 00:19:29,150 Έτσι, θα πάρει τελικά, σε αυτό το μάθημα, να 382 00:19:29,150 --> 00:19:30,570 διάφορες γλώσσες προγραμματισμού. 383 00:19:30,570 --> 00:19:34,280 Αλλά σήμερα θα το κάνουμε στα αγγλικά-όπως σύνταξη, όπου μπορείτε ακριβώς το είδος της πω 384 00:19:34,280 --> 00:19:37,330 τι εννοείς, αλλά είσαι πάντα τόσο σύντομη και να μην ανησυχείτε για 385 00:19:37,330 --> 00:19:38,960 γραμματική και πλήρεις προτάσεις. 386 00:19:38,960 --> 00:19:41,600 Θα εκφράσω μόνο τον εαυτό σας, όπως συνοπτικά γίνεται. 387 00:19:41,600 --> 00:19:45,400 >> Έτσι pseudocode είναι τα αγγλικά-όπως σύνταξη που αντιπροσωπεύει 388 00:19:45,400 --> 00:19:46,750 μια γλώσσα προγραμματισμού. 389 00:19:46,750 --> 00:19:51,170 Και προς αυτή την κατεύθυνση, επιτρέψτε μου να προτείνω εμείς μοντέλο τώρα τη διαδικασία που μόλις 390 00:19:51,170 --> 00:19:54,990 περιγράφεται από την καταμέτρηση κάτι λίγο διαφορετικά, αυτή τη φορά κέρδισε 391 00:19:54,990 --> 00:19:59,040 ματιά σε αυτό που παράγεται πέντε λεπτών βίντεο από τους φίλους μας στο TED που 392 00:19:59,040 --> 00:20:03,170 ορίζει τι είναι ψευδοκώδικας, ορίζει τι αλγοριθμικής σκέψης είναι, και ακόμη 393 00:20:03,170 --> 00:20:07,030 αν και το παράδειγμα που είστε έτοιμος να δείτε είναι, στον τομέα του το ίδιο, εξαιρετικά απλό, είναι 394 00:20:07,030 --> 00:20:09,820 πρόκειται να αρχίσει να μας δώσει την ψυχική μοντέλο, το λεξιλόγιο, με την οποία να 395 00:20:09,820 --> 00:20:14,588 κάνει πολύ, πολύ πιο περίπλοκη αλγόριθμοι είναι αρκετά γρήγορα. 396 00:20:14,588 --> 00:20:15,576 >> [Ξεκινήσετε την αναπαραγωγή VIDEO] 397 00:20:15,576 --> 00:20:29,920 >> [Παίζει μουσική] 398 00:20:29,920 --> 00:20:31,100 >> Αφηγητής: Τι είναι ένας αλγόριθμος; 399 00:20:31,100 --> 00:20:34,730 Στην επιστήμη των υπολογιστών, ένας αλγόριθμος είναι σετ οδηγιών για την επίλυση ορισμένων 400 00:20:34,730 --> 00:20:36,620 βήμα προς βήμα το πρόβλημα. 401 00:20:36,620 --> 00:20:39,650 Τυπικά, οι αλγόριθμοι εκτελούνται από τους υπολογιστές, αλλά εμείς οι άνθρωποι 402 00:20:39,650 --> 00:20:41,230 αλγορίθμων, όπως καλά. 403 00:20:41,230 --> 00:20:43,290 Για παράδειγμα, πώς θα πάτε για τον υπολογισμό του αριθμού 404 00:20:43,290 --> 00:20:44,750 των ανθρώπων σε ένα δωμάτιο; 405 00:20:44,750 --> 00:20:47,980 Λοιπόν, αν είστε σαν εμένα, θα ήθελα ίσως σημείο σε κάθε άτομο, ένα σε 406 00:20:47,980 --> 00:20:50,120 μια στιγμή, και να μετρούν από το 0. 407 00:20:50,120 --> 00:20:52,970 1, 2, 3, 4, και ούτω καθεξής. 408 00:20:52,970 --> 00:20:54,140 >> Λοιπόν, αυτό είναι ένας αλγόριθμος. 409 00:20:54,140 --> 00:20:57,600 Στην πραγματικότητα, ας προσπαθήσουμε να εκφράσει μια λίγο πιο επίσημα σε ψευδοκώδικα - 410 00:20:57,600 --> 00:21:00,700 Αγγλικά-όπως σύνταξη που μοιάζει με μια γλώσσα προγραμματισμού. 411 00:21:00,700 --> 00:21:02,580 Ας N ίσο 0. 412 00:21:02,580 --> 00:21:06,970 Για κάθε άτομο στο δωμάτιο, που N ίσο Ν συν 1. 413 00:21:06,970 --> 00:21:08,400 >> Πώς να ερμηνεύσει αυτό το ψευδοκώδικα; 414 00:21:08,400 --> 00:21:12,840 Λοιπόν, μια γραμμή δηλώνει, να το πω έτσι, μια μεταβλητή που ονομάζεται N και προετοιμάζει 415 00:21:12,840 --> 00:21:14,250 την αξία του στο 0. 416 00:21:14,250 --> 00:21:17,550 Αυτό σημαίνει απλά ότι κατά την έναρξη της αλγορίθμου μας, το πράγμα με το οποίο 417 00:21:17,550 --> 00:21:19,650 μετράμε έχει την τιμή 0. 418 00:21:19,650 --> 00:21:22,620 Μετά από όλα, πριν αρχίσουμε να μετράμε, Δεν έχουν υπολογιστεί ακόμη τίποτα. 419 00:21:22,620 --> 00:21:25,340 Κλήση αυτής της μεταβλητής N είναι απλά μια σύμβαση. 420 00:21:25,340 --> 00:21:26,890 Θα μπορούσα να έχω αποκάλεσε σχεδόν οτιδήποτε. 421 00:21:26,890 --> 00:21:30,560 >> Τώρα γραμμή δύο demarks την έναρξη της βρόχο, μια ακολουθία των βημάτων που θα 422 00:21:30,560 --> 00:21:32,310 επαναλαμβάνουν κάποιες φορές. 423 00:21:32,310 --> 00:21:35,910 Έτσι, στο παράδειγμά μας, το βήμα που παίρνετε υπολογίζει άτομα σε ένα δωμάτιο. 424 00:21:35,910 --> 00:21:38,730 Κάτω γραμμή είναι η γραμμή δύο τρία, η οποία περιγράφει ακριβώς πώς 425 00:21:38,730 --> 00:21:40,160 θα πάμε για την καταμέτρηση. 426 00:21:40,160 --> 00:21:43,440 Η οδόντωση υπονοεί ότι είναι τρεις γραμμή που θα επαναληφθούν. 427 00:21:43,440 --> 00:21:47,380 >> Έτσι, ποια είναι η pseudocode λέει είναι ότι μετά την έναρξη σε 0, για καθεμία 428 00:21:47,380 --> 00:21:50,690 άτομο στο δωμάτιο, θα αύξηση της Ν κατά 1. 429 00:21:50,690 --> 00:21:53,050 Τώρα είναι ο αλγόριθμος αυτός είναι σωστή; 430 00:21:53,050 --> 00:21:54,580 Λοιπόν, ας Έκρηξη σε ένα κομμάτι. 431 00:21:54,580 --> 00:21:57,270 Μήπως αυτό το έργο, αν υπάρχουν δύο άτομα σε ένα δωμάτιο; 432 00:21:57,270 --> 00:21:58,170 Ας δούμε. 433 00:21:58,170 --> 00:22:00,260 >> Σε μία γραμμή, έχουμε προετοιμαστεί Ν σε 0. 434 00:22:00,260 --> 00:22:03,660 Για καθένα από αυτά τα δύο άτομα, θα αυξήσετε τότε Ν από 1. 435 00:22:03,660 --> 00:22:07,310 Έτσι, στην πρώτη διαδρομή μέσα από το loop, ενημερώνουμε N 0-1. 436 00:22:07,310 --> 00:22:11,070 Στο δεύτερο ταξίδι μέσα από την ίδια loop, ενημερώνουμε N 1 έως 2. 437 00:22:11,070 --> 00:22:15,780 Και έτσι από το τέλος αυτού του αλγορίθμου, n είναι 2, η οποία ταιριάζει πράγματι τον αριθμό των 438 00:22:15,780 --> 00:22:16,700 άτομα σε ένα δωμάτιο. 439 00:22:16,700 --> 00:22:17,760 >> Μέχρι στιγμής, όλα καλά. 440 00:22:17,760 --> 00:22:19,610 Τι θα λέγατε για μια υπόθεση γωνία, όμως; 441 00:22:19,610 --> 00:22:22,590 Ας υποθέσουμε ότι υπάρχουν 0 άτομα στο δωμάτιο - εκτός από εμένα, 442 00:22:22,590 --> 00:22:24,170 ποιος κάνει την καταμέτρηση. 443 00:22:24,170 --> 00:22:27,150 Σε μία γραμμή, έχουμε προετοιμαστεί Ν σε 0. 444 00:22:27,150 --> 00:22:30,280 Αυτή τη φορά, όμως, γραμμή τρία δεν εκτελέσει καθόλου δεδομένου ότι δεν υπάρχει 445 00:22:30,280 --> 00:22:31,370 άτομο στο δωμάτιο. 446 00:22:31,370 --> 00:22:35,260 Και έτσι Ν παραμένει 0, το οποίο ταιριάζει με το αριθμός των ατόμων στο δωμάτιο. 447 00:22:35,260 --> 00:22:36,420 Αρκετά απλό, σωστά; 448 00:22:36,420 --> 00:22:39,630 >> Αλλά καταμέτρηση των ανθρώπων, ένα κάθε φορά είναι αρκετά αναποτελεσματική, πάρα πολύ, έτσι δεν είναι; 449 00:22:39,630 --> 00:22:40,920 Σίγουρα μπορούμε να κάνουμε κάτι καλύτερο. 450 00:22:40,920 --> 00:22:43,120 Γιατί δεν μετράνε δύο άτομα σε μια στιγμή; 451 00:22:43,120 --> 00:22:49,300 Αντί μετρώντας 1, 2, 3, 4, 5, 6, 7, 8, και ούτω καθεξής, γιατί να μην μετράνε, 2, 452 00:22:49,300 --> 00:22:51,460 4, 6, 8, και ούτω καθεξής; 453 00:22:51,460 --> 00:22:53,700 Ακούγεται ακόμα πιο γρήγορα, και είναι σίγουρα. 454 00:22:53,700 --> 00:22:56,240 >> Ας εκφράσουμε αυτή την βελτιστοποίηση σε ψευδοκώδικα. 455 00:22:56,240 --> 00:22:57,800 Ας N ίσο 0. 456 00:22:57,800 --> 00:23:02,450 Για κάθε ζεύγος των ατόμων στο δωμάτιο, που N ίσο με Ν συν 2. 457 00:23:02,450 --> 00:23:04,120 Αρκετά απλή αλλαγή, έτσι δεν είναι; 458 00:23:04,120 --> 00:23:06,750 Αντί οι άνθρωποι μετράνε ένα σε μια στιγμή, εμείς αντί να μετρούν 459 00:23:06,750 --> 00:23:08,300 τα δύο σε έναν χρόνο. 460 00:23:08,300 --> 00:23:10,980 Αυτός ο αλγόριθμος είναι έτσι δύο φορές όσο πιο γρήγορα το τελευταίο. 461 00:23:10,980 --> 00:23:12,180 >> Αλλά είναι σωστό; 462 00:23:12,180 --> 00:23:12,920 Ας δούμε. 463 00:23:12,920 --> 00:23:15,330 Μήπως αυτό το έργο, αν υπάρχουν δύο άτομα σε ένα δωμάτιο; 464 00:23:15,330 --> 00:23:17,550 Σε μία γραμμή, έχουμε προετοιμαστεί Ν σε 0. 465 00:23:17,550 --> 00:23:20,920 Για το ζεύγος έναν από τους ανθρώπους, θα αυξήσετε τότε Ν από δύο. 466 00:23:20,920 --> 00:23:24,860 Και έτσι από το τέλος αυτού του αλγορίθμου, N είναι 2, η οποία ταιριάζει πράγματι τον αριθμό των 467 00:23:24,860 --> 00:23:25,650 άτομα σε ένα δωμάτιο. 468 00:23:25,650 --> 00:23:28,250 >> Ας υποθέσουμε στη συνέχεια ότι υπάρχουν 0 άτομα σε ένα δωμάτιο. 469 00:23:28,250 --> 00:23:30,840 Σε μία γραμμή, έχουμε προετοιμαστεί Ν σε 0. 470 00:23:30,840 --> 00:23:34,330 Όπως και πριν, γραμμή τρία δεν εκτελέσει καθόλου, αφού δεν υπάρχουν ζεύγη 471 00:23:34,330 --> 00:23:35,380 των ανθρώπων σε ένα δωμάτιο. 472 00:23:35,380 --> 00:23:38,350 Και έτσι Ν παραμένει 0, η οποία μάλιστα ταιριάζει με τον αριθμό των 473 00:23:38,350 --> 00:23:39,570 άτομα σε ένα δωμάτιο. 474 00:23:39,570 --> 00:23:42,280 >> Τι γίνεται όμως αν υπάρχουν τρεις οι άνθρωποι στο δωμάτιο; 475 00:23:42,280 --> 00:23:44,130 Πώς το κάνει αυτό ναύλος αλγορίθμου; 476 00:23:44,130 --> 00:23:44,990 Ας δούμε. 477 00:23:44,990 --> 00:23:47,460 Σε μία γραμμή, έχουμε προετοιμαστεί Ν σε 0. 478 00:23:47,460 --> 00:23:50,870 Για ένα ζεύγος αυτών των ανθρώπων, θα αυξήσετε τότε Ν κατά 2. 479 00:23:50,870 --> 00:23:51,800 Αλλά τότε τι; 480 00:23:51,800 --> 00:23:54,960 Δεν υπάρχει άλλη πλήρες ζεύγος των ατόμων στην αίθουσα, έτσι ώστε τα δύο γραμμή δεν 481 00:23:54,960 --> 00:23:56,180 ισχύει πλέον. 482 00:23:56,180 --> 00:24:00,530 Και έτσι από το τέλος αυτού του αλγορίθμου, N εξακολουθεί να είναι 2, η οποία δεν είναι ορθή. 483 00:24:00,530 --> 00:24:03,810 >> Πράγματι, ο αλγόριθμος αυτός λέγεται ότι είναι αμαξάκι, επειδή έχει ένα λάθος. 484 00:24:03,810 --> 00:24:05,820 Αφήνει αποκατάσταση με κάποια νέα ψευδοκώδικα. 485 00:24:05,820 --> 00:24:09,670 Έστω n είναι ίσοι με 0 για κάθε ζεύγος των ατόμων στο δωμάτιο. 486 00:24:09,670 --> 00:24:12,550 Ορισμός N ίσο με Ν συν 2. 487 00:24:12,550 --> 00:24:17,140 Αν ένα άτομο παραμένει αταίριαστο, που N ίσο με N + 1. 488 00:24:17,140 --> 00:24:20,140 Για να λυθεί το συγκεκριμένο πρόβλημα, έχουμε θεσπίστηκε, σύμφωνα τέσσερα, ένα 489 00:24:20,140 --> 00:24:24,520 κατάσταση, αλλιώς γνωστή ως ένα υποκατάστημα που εκτελεί μόνο αν υπάρχει ένα 490 00:24:24,520 --> 00:24:26,640 πρόσωπο που δεν θα μπορούσε ζεύγος με ένα άλλο. 491 00:24:26,640 --> 00:24:30,440 Και τώρα, αν υπάρχει ένας ή τρεις ή οποιοδήποτε μονό αριθμό των ατόμων 492 00:24:30,440 --> 00:24:33,290 το δωμάτιο, ο αλγόριθμος θα μετρήσει τους τώρα. 493 00:24:33,290 --> 00:24:34,560 >> Μπορούμε να το κάνουμε ακόμα καλύτερο; 494 00:24:34,560 --> 00:24:38,820 Λοιπόν, θα μπορούσε να υπολογίζει σε 3s ή 4s ή ακόμα και 5s και 10s, αλλά πέρα ​​από αυτό, είναι 495 00:24:38,820 --> 00:24:41,360 πρόκειται να πάρει λίγο δύσκολο να το σημείο. 496 00:24:41,360 --> 00:24:44,660 Στο τέλος της ημέρας, αν εκτελεστεί υπολογιστές ή από τον άνθρωπο, 497 00:24:44,660 --> 00:24:46,750 αλγόριθμοι είναι απλώς ένα σύνολο των οδηγιών με 498 00:24:46,750 --> 00:24:48,290 η οποία για την επίλυση προβλημάτων. 499 00:24:48,290 --> 00:24:49,792 Αυτά ήταν μόνο τρεις. 500 00:24:49,792 --> 00:24:52,404 Ποιο είναι το πρόβλημα θα λυθεί με έναν αλγόριθμο; 501 00:24:52,404 --> 00:24:52,901 >> [PLAYBACK VIDEO END] 502 00:24:52,901 --> 00:24:55,883 >> DAVID MALAN: Αυτή είναι η μοναδική φορά Θα εμφανιστεί σε μορφή κινουμένων σχεδίων. 503 00:24:55,883 --> 00:25:01,050 Αλλά όταν η ιστορία αφήνει ανοικτά, Τώρα, πώς μπορούμε να κάνουμε καλύτερα; 504 00:25:01,050 --> 00:25:04,680 Τριάρια και τεσσάρια, διεκδικούμε, μπορούμε να υπολογίζουμε ανθρώπους πολύ πιο γρήγορα, αλλά μπορούμε 505 00:25:04,680 --> 00:25:06,290 κάνει ριζικά καλύτερο από αυτό; 506 00:25:06,290 --> 00:25:07,540 Και εγώ στοίχημα μπορούμε. 507 00:25:07,540 --> 00:25:11,980 >> Αν εισάγουμε ένα κομμάτι της δικής μας pseudocode εδώ, Πάω να προτείνει 508 00:25:11,980 --> 00:25:14,550 ότι μπορούμε να επιτύχουμε μια γραμμή σαν αυτή. 509 00:25:14,550 --> 00:25:17,280 Εμείς δεν πρόκειται να μετρήσει τους ανθρώπους ένα, δύο, τρία, τέσσερα. 510 00:25:17,280 --> 00:25:19,470 Εμείς δεν πρόκειται να πάμε δύο, τέσσερα, έξι, οκτώ. 511 00:25:19,470 --> 00:25:23,390 Εμείς πάμε να κάνουμε ουσιαστικά καλύτερη με την επανεξέταση του προβλήματος, και σε αυτό 512 00:25:23,390 --> 00:25:27,080 περίπτωση, αξιοποιώντας μια κατά τα άλλα υποχρησιμοποιούνται πόρων. 513 00:25:27,080 --> 00:25:31,460 >> Σε μια στιγμή, ελπίζω ότι θα συγχωρήσετε και να μας χιούμορ όρθιος 514 00:25:31,460 --> 00:25:34,470 θέση, σε ποιο σημείο θα πάμε να Ζητάμε κάθε ένας από εσάς να αναλάβει το σας 515 00:25:34,470 --> 00:25:36,400 μυαλά ο αριθμός 1. 516 00:25:36,400 --> 00:25:39,560 Είσαι στη συνέχεια πρόκειται να όλο και περισσότερο αδέξια, όσο περνάει ο καιρός, να βρουν 517 00:25:39,560 --> 00:25:42,740 κάποιος άλλος που στέκεται, συνδυάζουν αριθμούς σας μαζί 518 00:25:42,740 --> 00:25:43,720 με την προσθήκη τους επάνω. 519 00:25:43,720 --> 00:25:47,490 Κάποιος από εσάς στη συνέχεια πρόκειται να αγωνιστεί για να καθίσει κάτω πρώτα, και το άλλο πρόσωπο 520 00:25:47,490 --> 00:25:48,880 πρόκειται να επαναλάβω. 521 00:25:48,880 --> 00:25:53,090 >> Έτσι, με άλλα λόγια, με σπορά όλα σας με τον αριθμό 1, και στη συνέχεια 522 00:25:53,090 --> 00:25:57,800 Ο συνδυασμός των 1s σε 2s και των 2s σε 4s, με όλους ολοένα και 523 00:25:57,800 --> 00:26:02,740 κάθεται κάτω, θα πρέπει, στο τέλος της Ο αλγόριθμος αυτός, έχει μόνο ένα δάνειο 524 00:26:02,740 --> 00:26:07,570 ψυχή που δεν είχε καθίσει αρκετά γρήγορα, αλλά ο οποίος έχει το σύνολο μετράνε ακροατήρια 525 00:26:07,570 --> 00:26:09,180 στο δικό του μυαλό. 526 00:26:09,180 --> 00:26:13,730 >> Έτσι, αν ήταν, ας πάμε μπροστά και - βήμα ένα - σταθεί στη θέση του. 527 00:26:13,730 --> 00:26:15,600 Και να εκτελέσει. 528 00:26:15,600 --> 00:26:36,580 >> [CROWD μουρμουρίζοντας] 529 00:26:36,580 --> 00:26:38,820 >> DAVID MALAN: Ξέρετε όπου Lauren είναι; 530 00:26:38,820 --> 00:26:40,179 729; 531 00:26:40,179 --> 00:27:23,350 >> [CROWD μουρμουρίζοντας] 532 00:27:23,350 --> 00:27:24,340 >> DAVID MALAN: Εντάξει; 533 00:27:24,340 --> 00:27:39,110 >> [CROWD μουρμουρίζοντας] 534 00:27:39,110 --> 00:27:41,365 >> DAVID MALAN: Εντάξει, θα πρέπει να να πλησιάζει το τέλος. 535 00:27:41,365 --> 00:27:44,340 536 00:27:44,340 --> 00:27:47,670 Βλέπουμε μία συμπολίτες στέκεται ακόμα εδώ. 537 00:27:47,670 --> 00:27:48,770 Ποιος χρειάζεται άλλο να συνδεθεί; 538 00:27:48,770 --> 00:27:50,020 Αν εσείς θέλετε να συνδυάσετε off. 539 00:27:50,020 --> 00:27:53,260 540 00:27:53,260 --> 00:27:56,520 Κάποιος επάνω στην κορυφή. 541 00:27:56,520 --> 00:27:58,150 Γιατί δεν μπορώ να δανείσει ένα χέρι εδώ. 542 00:27:58,150 --> 00:28:01,370 Για τους πολύ λίγους ανθρώπους που εξακολουθούν να είναι στέκεται, τι αριθμούς εσείς 543 00:28:01,370 --> 00:28:02,790 έχετε στο μυαλό σας; 544 00:28:02,790 --> 00:28:04,020 >> ΣΠΟΥΔΑΣΤΩΝ: 78. 545 00:28:04,020 --> 00:28:06,010 >> DAVID MALAN: 78 συν - 546 00:28:06,010 --> 00:28:07,840 που στέκεται εδώ κάτω; 547 00:28:07,840 --> 00:28:08,370 >> ΣΠΟΥΔΑΣΤΩΝ: 39. 548 00:28:08,370 --> 00:28:09,590 >> DAVID MALAN: Plus 39. 549 00:28:09,590 --> 00:28:12,310 Πλέον ποιος άλλος στέκεται ακόμα; 550 00:28:12,310 --> 00:28:13,650 81; 551 00:28:13,650 --> 00:28:15,960 Εντάξει, ποιος άλλος; 552 00:28:15,960 --> 00:28:17,200 Ένα άλλο 81; 553 00:28:17,200 --> 00:28:17,860 Wow. 554 00:28:17,860 --> 00:28:19,210 Και τότε τι είναι στην πλάτη; 555 00:28:19,210 --> 00:28:20,360 >> ΣΠΟΥΔΑΣΤΩΝ: 49. 556 00:28:20,360 --> 00:28:21,812 >> DAVID MALAN: 49, συν; 557 00:28:21,812 --> 00:28:22,950 >> ΣΠΟΥΔΑΣΤΩΝ: 98. 558 00:28:22,950 --> 00:28:24,980 >> DAVID MALAN: 98 plus; 559 00:28:24,980 --> 00:28:28,190 Είναι ότι κάποιος άλλος; 560 00:28:28,190 --> 00:28:29,155 12; 561 00:28:29,155 --> 00:28:30,460 Καλή δουλειά. 562 00:28:30,460 --> 00:28:33,610 >> [Γέλια] 563 00:28:33,610 --> 00:28:34,690 >> DAVID MALAN: Ω, 112 - 564 00:28:34,690 --> 00:28:35,410 oh. 565 00:28:35,410 --> 00:28:36,220 Καλή δουλειά! 566 00:28:36,220 --> 00:28:38,660 >> [Γέλια] 567 00:28:38,660 --> 00:28:42,570 >> [Χειροκρότημα] 568 00:28:42,570 --> 00:28:43,820 >> DAVID MALAN: Οποιοσδήποτε άλλος ακόμα όρθια; 569 00:28:43,820 --> 00:28:46,710 570 00:28:46,710 --> 00:28:47,260 Συγγνώμη; 571 00:28:47,260 --> 00:28:48,110 >> ΣΠΟΥΔΑΣΤΩΝ: 99. 572 00:28:48,110 --> 00:28:49,810 >> DAVID MALAN: 99. 573 00:28:49,810 --> 00:28:52,620 Οποιοσδήποτε άλλος στέκεται ακόμα; 574 00:28:52,620 --> 00:28:57,290 Και ο συνολικός αριθμός των φοιτητών εδώ είναι στην πραγματικότητα, σύμφωνα με την - 575 00:28:57,290 --> 00:28:59,400 έχετε έναν αριθμό; 576 00:28:59,400 --> 00:29:03,170 Ω, ο πραγματικός αριθμός των ατόμων στην αίθουσα, σύμφωνα με το λογαριασμό που 577 00:29:03,170 --> 00:29:07,660 οι υπότροφοι διδασκαλίας έκαναν στο δρόμο του καθενός μέσα, ήταν 729. 578 00:29:07,660 --> 00:29:11,070 Έτσι, από νοσοκόμες, φοιτητές του Χάρβαρντ οι οποίοι υπολογίζονται, η 579 00:29:11,070 --> 00:29:14,126 απάντηση είναι 637. 580 00:29:14,126 --> 00:29:15,480 >> [Γέλια] 581 00:29:15,480 --> 00:29:16,350 >> DAVID MALAN: Τόσο κοντά. 582 00:29:16,350 --> 00:29:17,360 Αλλά ακόμα. 583 00:29:17,360 --> 00:29:22,110 Εντάξει, έτσι ώστε να είναι μια διδασκαλία στιγμή, έτσι δεν είναι; 584 00:29:22,110 --> 00:29:24,120 Αυτό είναι τώρα αυτό που περιγράφουν ως ένα bug. 585 00:29:24,120 --> 00:29:28,120 Κάπου στην πορεία, κάναμε κάποιες αριθμητικό λάθος, ή κάποιος κάθισε, 586 00:29:28,120 --> 00:29:29,930 ή αριστερά, ή κάτι πήγε στραβά. 587 00:29:29,930 --> 00:29:30,930 Αλλά αυτό είναι εντάξει. 588 00:29:30,930 --> 00:29:33,390 Διότι ακόμη και ακόμα, εμείς πήρε πολύ κοντά. 589 00:29:33,390 --> 00:29:37,480 Και θα έλεγα ότι φτάσαμε στο λάθος απαντήσετε σε μια πολύ πιο γρήγορα από ό, τι θα έπρεπε 590 00:29:37,480 --> 00:29:39,770 χρησιμοποιώντας πιο γραμμική προσέγγιση μου. 591 00:29:39,770 --> 00:29:42,630 >> Ας υποθέσουμε ότι όντως πάρει ότι διορθώσει, αλλά σκεφτείτε τώρα τι 592 00:29:42,630 --> 00:29:46,870 συνέβαινε κάθε φορά, σε σχέση μου δική αφελής αλγόριθμος δείχνει. 593 00:29:46,870 --> 00:29:48,420 Ένα, δύο, τρία. 594 00:29:48,420 --> 00:29:53,010 Αν πράγματι υπάρχουν 729 ή 637 άτομα εδώ, που θα με λάβει 595 00:29:53,010 --> 00:29:57,720 κυριολεκτικά 637 ή 729 επισημάνσεις του δακτύλου και 596 00:29:57,720 --> 00:29:59,490 προσαύξηση συνολικό αριθμό μου. 597 00:29:59,490 --> 00:30:01,910 Και θα μπορούσα να κάνω λίγο καλύτερη από πηγαίνει δύο, τέσσερα, έξι, οκτώ, και 598 00:30:01,910 --> 00:30:05,660 διπλασιάσει την ταχύτητα αυτή, ίσως ακόμα και να τριπλασιαστεί ή τετράκλινα, ανάλογα με το πόσο καλά μπορώ 599 00:30:05,660 --> 00:30:07,110 κάνουμε ότι η καταμέτρηση στο κεφάλι μου. 600 00:30:07,110 --> 00:30:10,720 >> Αλλά αυτή η προσέγγιση ότι εσείς πήρε ήταν ριζικά διαφορετική. 601 00:30:10,720 --> 00:30:12,770 Επειδή στην αρχή, όλους εσάς σηκώθηκε. 602 00:30:12,770 --> 00:30:14,620 Έτσι, όλα τα 729. 603 00:30:14,620 --> 00:30:17,370 Και τότε κυριολεκτικά το μισό από εσάς κάθισε. 604 00:30:17,370 --> 00:30:19,720 Και μετά από αυτό, ένα άλλο μισό από εσάς κάθισε. 605 00:30:19,720 --> 00:30:22,650 Και μετά από αυτό, ένα άλλο μισό από εσάς κάθισε. 606 00:30:22,650 --> 00:30:27,470 >> Και το συνολικό αριθμό των φορών που θα παιδιά θα μπορούσαν να έχουν κάθισε είναι περίπου 607 00:30:27,470 --> 00:30:31,740 οκτώ ή εννέα ή δέκα φορές συνολικά, ανάλογα με το τι συνολικό αριθμό μας. 608 00:30:31,740 --> 00:30:33,300 Και μπορούμε να ταξινομήσετε του κάνουν Αυτό το άλλο τρόπο. 609 00:30:33,300 --> 00:30:37,740 Αν είχαμε 1.024 ατόμων στο δωμάτιο, η συνολικός αριθμός των φορών που θα μπορούσε να 610 00:30:37,740 --> 00:30:41,870 μείωση κατά το ήμισυ 1.024 άτομα είναι 10. 611 00:30:41,870 --> 00:30:43,370 >> Τώρα σκέφτομαι σε την άλλη κατεύθυνση. 612 00:30:43,370 --> 00:30:49,170 Ας υποθέσουμε, γελοία, ότι είχαμε, ας πούμε τέσσερα δισεκατομμύρια άνθρωποι σε αυτή την αίθουσα, 613 00:30:49,170 --> 00:30:50,860 ή ένα ελαφρώς μεγαλύτερο δωμάτιο. 614 00:30:50,860 --> 00:30:54,550 Πόσες φορές θα έχουμε φύγει μέσω αυτού του αλγορίθμου, έτσι ώστε το ήμισυ 615 00:30:54,550 --> 00:30:58,110 της κατηγορίας αυτής κάθεται κάτω; 616 00:30:58,110 --> 00:31:03,050 Είναι μόνο πρόκειται να πάρει 32, όπως εργασίες, ακόμη και σε μια τάξη μεγέθους 617 00:31:03,050 --> 00:31:03,770 τέσσερα δισεκατομμύρια. 618 00:31:03,770 --> 00:31:04,055 Γιατί; 619 00:31:04,055 --> 00:31:06,980 Επειδή τέσσερα δισεκατομμύρια πηγαίνει σε δύο δισ. ευρώ, πηγαίνει σε ένα εκατομμύριο, πηγαίνει στο 620 00:31:06,980 --> 00:31:09,925 500 εκατ. ευρώ, πηγαίνει στο 250 εκατ. ευρώ, τελεία, τελεία, τελεία. 621 00:31:09,925 --> 00:31:14,940 Μπορώ μόνο να κάνω τη διαίρεση αυτή το 32 φορές, σε ποιο σημείο, όλοι εκτός 622 00:31:14,940 --> 00:31:17,820 ένα άτομο θα μπορούσε να μείνει όρθια. 623 00:31:17,820 --> 00:31:21,590 >> Και αυτό, επίσης, είναι ένα είδος ισχυρού ιδέα ότι όλο και εμείς θα προσπαθήσουμε να 624 00:31:21,590 --> 00:31:24,690 μόχλευσης σε αυτό το μάθημα, και προγραμματισμό και την επιστήμη των υπολογιστών περισσότερα 625 00:31:24,690 --> 00:31:29,400 Σε γενικές γραμμές, αυτά τα μικρόβια μιας ιδέας με οποία μπορούμε να λύσουμε τα προβλήματα, στη συνέχεια πολύ, 626 00:31:29,400 --> 00:31:31,130 πολύ πιο δυναμικά. 627 00:31:31,130 --> 00:31:34,610 Έτσι ξεκινήσαμε αρκετά απλή με αυτό pseudocode και ένας τύπος σε ένα δωμάτιο, αλλά 628 00:31:34,610 --> 00:31:38,205 τώρα, ένα ολόκληρο δωμάτιο γεμάτο από ανθρώπους έχουμε κάνει ουσιαστικά καλύτερα. 629 00:31:38,205 --> 00:31:41,460 >> Λοιπόν, ας πάμε τώρα μετάβαση από ψευδοκώδικα σε κάποιο πραγματικό κώδικα. 630 00:31:41,460 --> 00:31:44,200 Αυτή η γλώσσα που είστε έτοιμος να δούμε να συμβεί να ονομάζεται JavaScript, και 631 00:31:44,200 --> 00:31:46,190 θα επανέλθει σε αυτό προς τέλος του εξαμήνου. 632 00:31:46,190 --> 00:31:49,960 Είναι μια γλώσσα προγραμματισμού που χρησιμοποιούν για να κάνουν ιστοσελίδες και άλλα τέτοια 633 00:31:49,960 --> 00:31:51,360 λογισμικού αυτές τις μέρες. 634 00:31:51,360 --> 00:31:54,890 Και έχουμε χρησιμοποιήσει, χάρη σε ένα φίλο από μας στο Πανεπιστήμιο του Στάνφορντ, να κωδικοποιήσει 635 00:31:54,890 --> 00:31:56,630 κάποιες κρυφές πληροφορίες εδώ. 636 00:31:56,630 --> 00:31:59,500 Αυτή είναι η τέχνη της steganography, να το πω έτσι, όπου μπορείτε να κρύψετε 637 00:31:59,500 --> 00:32:03,990 πληροφορίες σε ό, τι άλλο φαίνεται να να είναι θόρυβος ή ένα εντελώς διαφορετικό 638 00:32:03,990 --> 00:32:05,220 εικόνα συνολικά. 639 00:32:05,220 --> 00:32:10,120 Αλλά ενσωματωμένες στη συγκεκριμένη εικόνα είναι πράγματι ένα μυστικό μήνυμα του είδους. 640 00:32:10,120 --> 00:32:12,950 >> Έτσι, επιτρέψτε μου να πάει μπροστά και να σηκώσει η ίδια εικόνα εδώ, αυτό 641 00:32:12,950 --> 00:32:14,270 φορά σε ένα πρόγραμμα περιήγησης στο web. 642 00:32:14,270 --> 00:32:17,710 Και Πάω να κύμα το χέρι μου σε μερικά από οι λεπτομέρειες για σήμερα, ιδιαίτερα 643 00:32:17,710 --> 00:32:21,780 για όσους από εσάς αυτό μοιάζει δεν είναι μόνο ελληνικό, αλλά JavaScript, ως 644 00:32:21,780 --> 00:32:23,930 εντελώς άγνωστη γλώσσα. 645 00:32:23,930 --> 00:32:26,190 Αλλά αυτό είναι ένα παράδειγμα της μια γλώσσα προγραμματισμού. 646 00:32:26,190 --> 00:32:30,660 >> Και προς το παρόν, να λάβει την πίστη ότι Αυτή η πρώτη γραμμή κώδικα - 647 00:32:30,660 --> 00:32:32,470 και ανά κωδικό, εννοώ μόνο κείμενο. 648 00:32:32,470 --> 00:32:35,660 Το κείμενο που θα μπορούσα να έχω κυριολεκτικά πληκτρολογήσει στο Microsoft Word, αν είχα το 649 00:32:35,660 --> 00:32:37,630 κατάλληλο λογισμικό για την συνέχεια κάνει κάτι με αυτό. 650 00:32:37,630 --> 00:32:42,120 Πηγαίου κώδικα προγραμμάτων, ο προγραμματισμός κώδικα, είναι πραγματικά ακριβώς το κείμενο, και 651 00:32:42,120 --> 00:32:45,420 φαίνεται διαφορετική ανάλογα με το τι γλώσσα που χρησιμοποιείτε, δεν σε αντίθεση με αγγλικά και 652 00:32:45,420 --> 00:32:49,200 Ισπανικά και τα ρωσικά όλα φαίνονται διαφορετικά όταν τους πληκτρολογείτε στο πληκτρολόγιό σας. 653 00:32:49,200 --> 00:32:53,520 >> Έτσι, αυτή την πρώτη γραμμή, προς το παρόν αναλάβει πίστη, απλά ανοίγει ένα γραφικό από το 654 00:32:53,520 --> 00:32:56,160 internet, ότι η θορυβώδης γραφικών μόλις είδαμε. 655 00:32:56,160 --> 00:32:59,900 Η επόμενη γραμμή είναι εδώ ένα παράδειγμα μιας loop, και είδαμε πράγματι την ίδια 656 00:32:59,900 --> 00:33:01,130 ορολογία στο βίντεο TED. 657 00:33:01,130 --> 00:33:03,750 Ένας βρόχος είναι κάτι που συμβαίνει και πάλι και ξανά, και ακόμα κι αν αυτό 658 00:33:03,750 --> 00:33:08,440 απολύτως φαίνεται δυσνόητη, με το λέξη-κλειδί για, και μερικές παρενθέσεις, και 659 00:33:08,440 --> 00:33:09,510 κάποιοι ερωτηματικά. 660 00:33:09,510 --> 00:33:13,070 Θα επανέλθω στο θέμα αυτό πριν από καιρό, αλλά βρόχος ουσιαστικά υπάρχει 661 00:33:13,070 --> 00:33:17,310 λέει το πρόγραμμα, επαναλάβετε σε όλους των εν λόγω θορυβώδη τελείες, από αριστερά προς 662 00:33:17,310 --> 00:33:18,980 δεξιά, επάνω προς τα κάτω. 663 00:33:18,980 --> 00:33:21,260 >> Επειδή στο τέλος της ημέρας, μια εικόνα αρέσει αυτό - και μπορείτε πραγματικά να 664 00:33:21,260 --> 00:33:22,860 είδος το δείτε σε αυτό τον προβολέα - 665 00:33:22,860 --> 00:33:25,280 είναι πραγματικά ακριβώς ένα πλέγμα από κουκκίδες. 666 00:33:25,280 --> 00:33:29,730 Έτσι, μπορούμε να εντοπίσουμε κάθε μία από τις τελείες από μια συντεταγμένη, x, y, και με αυτό 667 00:33:29,730 --> 00:33:33,890 πρόγραμμα, τώρα μπορούμε να αρχίσουμε να κάνουμε κάτι για αυτές τις στιγμές. 668 00:33:33,890 --> 00:33:37,540 >> Λοιπόν, τι Πάω να προχωρήσει εδώ και δεν είναι Πάω να κάνει κάποιες αλλαγές. 669 00:33:37,540 --> 00:33:41,000 Πρώτη Πάω να πάει μπροστά και να απαλλαγούμε του συνόλου των εν λόγω πρασινωπό και γαλαζωπό 670 00:33:41,000 --> 00:33:43,520 θόρυβο, και πάω να προχωρήσει και πληκτρολογήστε την ακόλουθη 671 00:33:43,520 --> 00:33:45,710 ομολογουμένως αινιγματική σύνταξη. 672 00:33:45,710 --> 00:33:48,020 im για την εικόνα. 673 00:33:48,020 --> 00:33:53,380 που μπλε στη θέση x, κόμμα, Τοποθεσία y, στο 0. 674 00:33:53,380 --> 00:33:55,610 Με άλλα λόγια, θέλω απλά να απενεργοποιήστε όλα τα μπλε 675 00:33:55,610 --> 00:33:56,920 τελείες σε αυτήν την εικόνα. 676 00:33:56,920 --> 00:33:59,800 >> Πάω να προχωρήσει τώρα και κάντε κλικ Αυτό Run / κουμπί Αποθήκευση, και θα 677 00:33:59,800 --> 00:34:02,850 ανακοίνωση σχετικά με την δεξιά πλευρά, η εικόνα που εμφανίζεται. 678 00:34:02,850 --> 00:34:06,120 Τώρα σούπερ πράσινο της, αλλά αυτό δεν είναι έκπληξη, γιατί κυριολεκτικά γύρισε 679 00:34:06,120 --> 00:34:11,070 off, κάνοντας μια 1 σε 0, το σύνολο των το μπλε σε αυτήν την εικόνα. 680 00:34:11,070 --> 00:34:12,540 >> Λοιπόν, τώρα ας το κάνουμε λίγο περισσότερο. 681 00:34:12,540 --> 00:34:16,989 im για την εικόνα, dot setGreen, x, y. 682 00:34:16,989 --> 00:34:20,659 Και αυτό σημαίνει απλώς επαναλήψεις από αριστερά προς τα δεξιά και στη συνέχεια πάνω προς τα κάτω. 683 00:34:20,659 --> 00:34:23,520 Γυρίστε μακριά ότι με αξία 0, καθώς και. 684 00:34:23,520 --> 00:34:24,750 Αποθήκευση. 685 00:34:24,750 --> 00:34:28,100 Και στον προβολέα, δεν μπορείτε πραγματικά να δείτε πραγματικά τίποτα καθόλου. 686 00:34:28,100 --> 00:34:31,380 >> Στην οθόνη του φορητού υπολογιστή μου, αν ομοτίμους σε μόλις με το σωστό τρόπο, μπορώ να δω ένα κομμάτι της 687 00:34:31,380 --> 00:34:33,300 εικόνα, επειδή είναι ακόμα κάποια κόκκινα εκεί. 688 00:34:33,300 --> 00:34:35,540 Αν έχετε ακούσει ποτέ το ακρωνύμιο RGB - 689 00:34:35,540 --> 00:34:36,830 κόκκινο, πράσινο, μπλε - 690 00:34:36,830 --> 00:34:39,110 αυτό είναι που παραπέμπει στην παρούσα σύνθεση μιας εικόνας χρησιμοποιώντας 691 00:34:39,110 --> 00:34:40,230 μόνο αυτά τα τρία χρώματα. 692 00:34:40,230 --> 00:34:43,159 Και τώρα, έχουμε πετιούνται όλα πράσινα, όλα μπλε, αλλά 693 00:34:43,159 --> 00:34:44,500 δεν υπάρχει πολύ κόκκινο. 694 00:34:44,500 --> 00:34:45,920 >> Επιτρέψτε μου λοιπόν να ξεκινήσουμε το κόκκινο. 695 00:34:45,920 --> 00:34:47,070 Πώς μπορώ να κάνω αυτό; 696 00:34:47,070 --> 00:34:49,300 Λοιπόν, πρώτα, θα πάω να ρωτήσω το πρόγραμμα αυτό ένα ερώτημα. 697 00:34:49,300 --> 00:34:52,030 Πάω να πάει μπροστά και ας το πούμε μια μεταβλητή, όπως ακριβώς και στην άλγεβρα. 698 00:34:52,030 --> 00:34:54,060 Μπορείτε να έχετε x ή y ή z. 699 00:34:54,060 --> 00:34:57,230 Πάω να δηλώσει μια μεταβλητή και να πω, να θέσει στη μεταβλητή αυτή, 700 00:34:57,230 --> 00:35:02,790 προσωρινά, η αξία των εικόνες getRed αξία σε x, y. 701 00:35:02,790 --> 00:35:05,870 >> Και πάλι, θα επανέλθουμε σε όλους της παρούσας λεπτομέρεια στο μέλλον. 702 00:35:05,870 --> 00:35:10,630 Αλλά για τώρα, μόλις λάβει την πίστη ότι Αυτή η γραμμή ζητεί από το πρόγραμμα, τι 703 00:35:10,630 --> 00:35:12,740 είναι το κόκκινο αξία σε x, y; 704 00:35:12,740 --> 00:35:14,450 Εκείνη τη συγκεκριμένη dot; 705 00:35:14,450 --> 00:35:15,710 >> Στη συνέχεια, Πάω να κάνω κάτι γι 'αυτό. 706 00:35:15,710 --> 00:35:21,100 Στη συνέχεια, Πάω να κάνω εικόνα dot σετ κόκκινο στο x, y, y, αλλά αυτή τη φορά Πάω να 707 00:35:21,100 --> 00:35:24,760 ώθηση που κάνοντας κόκκινα φορές, ας πούμε, 10. 708 00:35:24,760 --> 00:35:26,870 Έτσι ώστε να αυξηθεί κατά ένα συντελεστή 10. 709 00:35:26,870 --> 00:35:29,880 Επιτρέψτε μου σμίκρυνση τώρα και κλικ μπορούσε να τρέξει / Save. 710 00:35:29,880 --> 00:35:36,430 Και voila, που ήταν εκεί το σύνολο της του χρόνου, ακόμη και αν τα ανθρώπινα μάτια μας 711 00:35:36,430 --> 00:35:37,900 Δεν μπορούσε να δει αρκετά. 712 00:35:37,900 --> 00:35:41,470 >> Έτσι και πάλι, αυτό είναι τώρα πραγματικό κώδικα, ένα παράδειγμα μιας γλώσσας που θα έρθουν 713 00:35:41,470 --> 00:35:42,770 πίσω στην πριν από καιρό. 714 00:35:42,770 --> 00:35:46,670 Αλλά συνειδητοποιούν, ιδιαίτερα όσοι από εσάς χωρίς τέτοια εμπειρία, είναι αρκετά 715 00:35:46,670 --> 00:35:50,280 σύντομα ότι εμείς οι ίδιοι θα τη σύνταξη κώδικα, όπως ότι υπάρχει. 716 00:35:50,280 --> 00:35:54,520 Στην πραγματικότητα, ένα εργαλείο με το οποίο είστε όλοι κάπως εξοικειωμένοι, ίσως, είναι το CS50 717 00:35:54,520 --> 00:35:57,330 τη δική της πορεία-shopping εργαλείο, το οποίο ήταν πραγματικά επανεκκίνηση αυτό το καλοκαίρι από κάποιους 718 00:35:57,330 --> 00:36:01,070 των ιδίων πρώην CS50 μαθητών του, τώρα ΤΡ. 719 00:36:01,070 --> 00:36:04,740 >> Έτσι, αυτό συμβαίνει να είναι ένα ενσωματωμένο ιστοσελίδα σε μια γλώσσα που ονομάζεται PHP. 720 00:36:04,740 --> 00:36:08,510 Χρησιμοποιεί μια βάση δεδομένων που ονομάζεται MySQL, τα πράγματα με την οποία θα πάρουμε στα χέρια μας 721 00:36:08,510 --> 00:36:10,190 βρώμικο αργότερα στο εξάμηνο. 722 00:36:10,190 --> 00:36:14,140 Όμως, είτε το πιστεύετε είτε όχι, ακόμα και κάτι όπως αυτό τελικά μειώνει το 723 00:36:14,140 --> 00:36:19,480 απλούστερη των βρόχων και των όρων και κλάδους, όπως αυτές που είδαμε μόνο ένα 724 00:36:19,480 --> 00:36:21,530 πριν από λίγο στο βίντεο TED. 725 00:36:21,530 --> 00:36:25,180 >> Τι σκέφτηκα να κάνω τώρα είναι μετοχής δεν απλά κάτι που το προσωπικό έχουν κάνει 726 00:36:25,180 --> 00:36:28,010 για την πανεπιστημιούπολη, αλλά μάλλον κάτι ένας πρώην φοιτητής - τρεις 727 00:36:28,010 --> 00:36:29,080 φοιτητές, στην πραγματικότητα - 728 00:36:29,080 --> 00:36:33,950 έκανε αυτό το παρελθόν έτος, Sierra, Daniel, και Sam, η τελευταία εκ των οποίων δεν είχε καμία προηγούμενη 729 00:36:33,950 --> 00:36:36,370 προγραμματισμού εμπειρία όταν πήρε CS50. 730 00:36:36,370 --> 00:36:39,950 Και για την τελική του έργου τους, παρουσίασε, στην έκθεση CS50, η 731 00:36:39,950 --> 00:36:43,720 εφαρμογή που ονομάζεται wrdly, το οποίο είναι ένα web-based πρόγραμμα για το οποίο έκαναν 732 00:36:43,720 --> 00:36:47,670 Αυτό το βίντεο που σκέφτηκα να μοιραστώ με να σας δώσει μια αίσθηση του τι ακριβώς είναι 733 00:36:47,670 --> 00:36:49,280 είναι δυνατόν μέχρι το τέλος του όρου. 734 00:36:49,280 --> 00:37:57,170 >> [Παίζει μουσική] 735 00:37:57,170 --> 00:38:00,570 >> DAVID MALAN: Αυτό είναι από το μηδέν Εβδομάδα μέχρι την 12η εβδομάδα το περασμένο έτος. 736 00:38:00,570 --> 00:38:05,470 >> [Χειροκρότημα] 737 00:38:05,470 --> 00:38:09,520 >> DAVID MALAN: Ως ένα teaser, πάρα πολύ, πραγματικά για να σας ανοίξουν την όρεξη είναι ό, τι είναι 738 00:38:09,520 --> 00:38:14,580 είναι δυνατόν, μπορεί να έχετε δει ήδη, ή μπορεί να δούμε σύντομα, market.cs50.net, ένα 739 00:38:14,580 --> 00:38:17,710 νέο εργαλείο ότι η ομάδα του μαθήματος έχει εργάζεται σε, αυτή τη φορά στο 740 00:38:17,710 --> 00:38:21,530 συνεργασία με το Φοιτητικό Harvard Φορείς, όπως ότι ξεκινώντας από φέτος 741 00:38:21,530 --> 00:38:24,980 και συνεχίζοντας ελπίζουμε σε αυτό ερχόμενο καλοκαίρι θα έχετε ένα πρότυπο 742 00:38:24,980 --> 00:38:27,890 ευκαιρία στην πανεπιστημιούπολη για να αγοράσουν και να πωλούν τα πράγματα που σας ενδιαφέρουν. 743 00:38:27,890 --> 00:38:32,220 Και με τη συνεργασία μέσω της HSA, θα είστε επίσης να είναι σε θέση να ρίξει αντικείμενα μακριά 744 00:38:32,220 --> 00:38:35,950 σε ένα από τα φυσικά καταστήματα HSA σε κάποια σημείο στο μέλλον, έτσι ώστε να 745 00:38:35,950 --> 00:38:39,150 proxy πράγματα, ειδικά καθώς αποφοιτήσει και δεν θέλουν απαραιτήτως να 746 00:38:39,150 --> 00:38:44,110 πετάξτε τα πράγματα, αλλά στην πραγματικότητα το πληρώσει διαβιβάσει σε λαούς που μπορεί να σας ακολουθήσει 747 00:38:44,110 --> 00:38:45,270 εδώ στην πανεπιστημιούπολη. 748 00:38:45,270 --> 00:38:46,740 Έτσι, περισσότερα για αυτό να έρθει. 749 00:38:46,740 --> 00:38:49,830 >> Αλλά λίγο πιο συγκεκριμένα, ένα εργαλείο που είναι να βγει από CS50 κατά τα τελευταία 750 00:38:49,830 --> 00:38:52,760 χρόνια, με την οποία κάποιοι από εσάς μπορεί να είναι οικεία και άλλοι από εσάς μπορεί να 751 00:38:52,760 --> 00:38:57,940 googling τώρα, σε CS50.net/2x, θα βρείτε ένα σύνδεσμο για μια επέκταση του Chrome 752 00:38:57,940 --> 00:39:01,250 η οποία είναι εκδηλωτικός για το πώς μπορείτε να χρησιμοποιούν JavaScript, η ίδια γλώσσα που 753 00:39:01,250 --> 00:39:06,660 χρησιμοποιείται με τον Πύργο του Άιφελ πριν από λίγο, για την εφαρμογή 2x ταχύτητα αναπαραγωγής 754 00:39:06,660 --> 00:39:09,000 για όλες τις Χάρβαρντ βίντεο iSites. 755 00:39:09,000 --> 00:39:11,880 Αυτό είναι κάτι που είναι χτισμένο στη δική αναπαραγωγής βίντεο CS50 του. 756 00:39:11,880 --> 00:39:14,870 Αλλά αυτό, επίσης, αν αρχίσετε να σκάψει στον πηγαίο κώδικα, τον οποίο και θα 757 00:39:14,870 --> 00:39:18,840 ευτυχώς διάθεση, θα δείτε πώς μπορείτε να λύσετε τα προβλήματα, ακόμη και έτσι, 758 00:39:18,840 --> 00:39:23,180 επιτάχυνση widgets σε δικτυακούς τόπους με οποία είστε ήδη εξοικειωμένοι. 759 00:39:23,180 --> 00:39:26,630 >> Έτσι, μια λέξη τώρα για την πορεία και προσδοκιών και ό, τι βρίσκεται μπροστά μας. 760 00:39:26,630 --> 00:39:29,445 Σε γενικές γραμμές, θα πράγματι συγκεντρώνονται εδώ Δευτέρα και Τετάρτη - αν και 761 00:39:29,445 --> 00:39:31,490 αυτή την Παρασκευή, θα μαζευτούμε γιατί της Εβδομάδας Shopping - 762 00:39:31,490 --> 00:39:34,640 1:00-14:00, αν και μερικές φορές μέχρι τις 2:30. 763 00:39:34,640 --> 00:39:38,700 Δεδομένου ότι ίσως να θέλει ή πρέπει να λάβει κάποια τάξη στις 2:00 μ.μ. 764 00:39:38,700 --> 00:39:42,480 και μετά, ή ακόμα και πριν, συνειδητοποιούν την Φυσικά υποστηρίζει αυτό που ονομάζεται 765 00:39:42,480 --> 00:39:45,900 ταυτόχρονη εγγραφή, την οποία εμείς θα στηρίξει μια αίτηση προς το Διοικητικό Συμβούλιο διαφημίσεων και 766 00:39:45,900 --> 00:39:49,400 κάτοικος κοσμήτορες σας για λογαριασμό σας, εάν έχετε μια σύγκρουση κάπου σε αυτό το 767 00:39:49,400 --> 00:39:50,790 1:00-2:30 περιοχή. 768 00:39:50,790 --> 00:39:54,110 Επικεφαλής της εν λόγω απευθείας σύνδεση URL για πρόσθετες λεπτομέρειες. 769 00:39:54,110 --> 00:39:57,750 >> Αλλά από την άποψη της δομής στήριξης που χαρακτηρίζει CS50, για τους φοιτητές 770 00:39:57,750 --> 00:40:01,750 περισσότερο και λιγότερο άνετα όσο, εμείς προσφέρουν ξεχωριστές διαδρομές των τμημάτων. 771 00:40:01,750 --> 00:40:04,730 Και αυτό είναι μια-δυο εβδομάδες μακριά, αλλά πριν από καιρό, θα σας ζητηθεί να 772 00:40:04,730 --> 00:40:05,770 το επίπεδο άνεσής σας. 773 00:40:05,770 --> 00:40:08,590 Είστε μεταξύ εκείνων λιγότερο άνετα, πιο άνετα, ή 774 00:40:08,590 --> 00:40:10,520 κάπου στο μεταξύ; 775 00:40:10,520 --> 00:40:13,150 >> Και θα έχουμε τρεις διαφορετικές κομμάτια που μπορούν να εξυπηρετήσουν 776 00:40:13,150 --> 00:40:14,470 ακριβώς αυτά τα ακροατήρια. 777 00:40:14,470 --> 00:40:17,900 Έτσι, σε κανένα σημείο του όρου θα πρέπει να σας ακόμη και να αισθανθείτε σαν να είστε ανταγωνίζονται 778 00:40:17,900 --> 00:40:21,390 ενάντια σε κάθε μαθητή με περισσότερες ή λιγότερο από ό, τι φόντο σας. 779 00:40:21,390 --> 00:40:24,160 Πράγματι, η πορεία είναι γραφτό να γίνει πολύ πιο συνεργατική και πολύ 780 00:40:24,160 --> 00:40:25,650 πιο ανοιχτό από αυτό. 781 00:40:25,650 --> 00:40:29,030 >> Όσον αφορά τα σύνολα πρόβλημα, θα βρει, επίσης, ότι εκτός από τη 782 00:40:29,030 --> 00:40:32,130 βασική έκδοση του προβλήματος του κάθε εβδομάδας που, υπάρχει συχνά ένα "hacker 783 00:40:32,130 --> 00:40:37,010 έκδοση "που είναι γραφτό να απευθύνονται στο 5% έως 10% περίπου από τις 784 00:40:37,010 --> 00:40:40,270 δημογραφικό που είναι πράγματι μεταξύ εκείνων πιο άνετα και θα ήθελα περισσότερα 785 00:40:40,270 --> 00:40:43,960 από μια πρόκληση από το κανονικό έκδοση της εν λόγω PSET αναμένει. 786 00:40:43,960 --> 00:40:46,390 Περισσότερες λεπτομέρειες σχετικά με αυτούς να είναι βρέθηκαν στο αναλυτικό πρόγραμμα. 787 00:40:46,390 --> 00:40:49,430 >> Αλλά και σε μπορεί να βρεθεί λεπτομέρειες για τα μαθήματα τελευταίες μέρες. 788 00:40:49,430 --> 00:40:51,570 Συνήθως το πρόβλημα θέτει οφείλονται στις Πέμπτες. 789 00:40:51,570 --> 00:40:55,550 Ωστόσο, μπορείτε να επεκτείνετε πολλά από σας προθεσμίες που αυτό το φθινόπωρο από την Πέμπτη μέχρι 790 00:40:55,550 --> 00:41:00,010 Παρασκευή απλά με την ικανοποίηση μας στα μισά του δρόμου, να το πω έτσι, απαντώντας σε λίγες προθέρμανση 791 00:41:00,010 --> 00:41:03,370 ερωτήσεις σε ορισμένες από το πρόβλημα της εβδομάδας σύνολα, που αυτόματα θα 792 00:41:03,370 --> 00:41:05,710 συνέχεια να σας δώσει ένα επιπλέον 24 ώρες. 793 00:41:05,710 --> 00:41:09,120 Θα μειωθεί επίσης χαμηλότερο σας βαθμολογία, σύμφωνα με την εξεταστέα ύλη. 794 00:41:09,120 --> 00:41:12,170 >> Για να σας δώσω μια αίσθηση του τι είναι το πρόβλημα σύνολα είναι - γιατί είναι όντως 795 00:41:12,170 --> 00:41:15,120 το πρόβλημα του μαθήματος ορίζει ότι τελικά καθορίζουν σχεδόν κάθε 796 00:41:15,120 --> 00:41:18,760 εμπειρία του μαθητή, πολύ περισσότερο από ό, τι διαλέξεις, πολύ περισσότερο από ό, τι τα τμήματα, περισσότερα 797 00:41:18,760 --> 00:41:21,230 ό, τι πιο οποιοδήποτε άλλο πτυχή του μαθήματος. 798 00:41:21,230 --> 00:41:25,140 Πέρυσι, για παράδειγμα, ξεκίνησε, όπως Θα ξεκινήσουμε αυτό το έτος, με Scratch. 799 00:41:25,140 --> 00:41:29,150 Ιδιαίτερα αυτή την Παρασκευή, θα χρησιμοποιήσουμε, για μόνο μίας ημέρας, μια γραφική 800 00:41:29,150 --> 00:41:32,260 γλώσσα προγραμματισμού, με την οποία θα ξεκινήσετε τον προγραμματισμό με το σύρσιμο και 801 00:41:32,260 --> 00:41:37,580 πέφτουν κομμάτια του παζλ που μόνο συναρμολόγηση φυσικά αν έχει νόημα 802 00:41:37,580 --> 00:41:38,990 να το πράξουν λογικά. 803 00:41:38,990 --> 00:41:43,460 >> Την επόμενη εβδομάδα, θα γρήγορα μετάβαση σε C, ένα αρκετά παλιό, αλλά πολύ μικρές και 804 00:41:43,460 --> 00:41:48,510 απλή γλώσσα που θα μας επιτρέψει να πραγματικά να πάει από 0 έως 60 κατά τη διάρκεια 805 00:41:48,510 --> 00:41:52,290 από λίγες εβδομάδες, και στη συνέχεια παρολί οι ίδιες δεξιότητες και τις γνώσεις του 806 00:41:52,290 --> 00:41:56,160 βασικές δομές προγραμματισμού σε υψηλότερου επιπέδου γλώσσες όπως η PHP, 807 00:41:56,160 --> 00:41:58,240 JavaScript, και όμως άλλοι ακόμα. 808 00:41:58,240 --> 00:42:02,560 >> Πέρυσι, η τρίτη PSET κατά τη διάρκεια ήταν εκείνη της κρυπτογραφίας, ένα 809 00:42:02,560 --> 00:42:06,380 domain-συγκεκριμένη εφαρμογή την οποία έχουμε αμφισβήτησε τους μαθητές για την εφαρμογή κάθε 810 00:42:06,380 --> 00:42:11,140 αριθμό των αλγόριθμους κρυπτογράφησης, τα προγράμματα με τα οποία να αγωνίζομαι ή να αποκωδικοποιήσει πληροφορίες, 811 00:42:11,140 --> 00:42:11,880 για την κρυπτογράφηση. 812 00:42:11,880 --> 00:42:16,300 Για την έκδοση του χάκερ, αντιθέτως, δώσαμε στους μαθητές hacker ένα αρχείο 813 00:42:16,300 --> 00:42:19,900 από έναν τυπικό υπολογιστή Unix περιέχει τα ονόματα χρήστη και κωδικούς πρόσβασης, 814 00:42:19,900 --> 00:42:22,740 ο τελευταίος των οποίων ήταν κρυπτογραφημένα, και αμφισβήτησε αυτές χάκερ 815 00:42:22,740 --> 00:42:26,850 μαθητές να αποκρυπτογραφήσει, όσο καλύτερα μπορούσαν, αυτοί οι κωδικοί πρόσβασης, ακόμα ότι 816 00:42:26,850 --> 00:42:27,770 ίδιο τομέα. 817 00:42:27,770 --> 00:42:30,580 >> Scramble, ένα παιχνίδι με το οποίο ορισμένα από εσάς είναι ίσως εξοικειωμένοι. 818 00:42:30,580 --> 00:42:34,410 Ένα κομμάτι εγκληματολογίας, όπου ζητάμε από τους μαθητές να ανακτήσει τα δεδομένα που είχαν 819 00:42:34,410 --> 00:42:38,530 αλλιώς διαγράφεται από τη δική μου ψηφιακή συμπαγή κάρτα λάμψης φωτογραφικής μηχανής, με 820 00:42:38,530 --> 00:42:42,740 στην πραγματικότητα γράφοντας λογισμικό για να καταλάβω, όπου ήταν τα μηδενικά και αυτοί στο 821 00:42:42,740 --> 00:42:46,850 ότι η ψηφιακή φωτογραφική μηχανή που προηγουμένως συνθέσει ένα γραφικό JPEG; 822 00:42:46,850 --> 00:42:49,710 >> Μια πρόκληση των ειδών του περασμένου έτους συμμετοχή γράφοντας τον ταχύτερο 823 00:42:49,710 --> 00:42:53,160 ορθογράφο είναι δυνατόν, ανταγωνίζονται ενάντια στους φίλους και συμμαθητές, αν 824 00:42:53,160 --> 00:42:53,860 θα ήθελαν. 825 00:42:53,860 --> 00:42:56,330 Εφαρμογή n Puff Huff, ένα πρόγραμμα συμπίεσης. 826 00:42:56,330 --> 00:43:01,930 Και τελειώνει μετά το εξάμηνο με CS50 Οικονομικών, μια web-based εφαρμογή με 827 00:43:01,930 --> 00:43:06,570 το οποίο μπορείτε να δημιουργήσετε ένα eTrade-σαν ιστοσελίδα για να αγοράζουν και να πωλούν τα αποθέματα, έτσι ώστε να 828 00:43:06,570 --> 00:43:09,860 μιλούν, με πραγματικά τραβώντας σχεδόν σε πραγματικό χρόνο Yahoo! εισαγωγικά 829 00:43:09,860 --> 00:43:10,450 Οικονομικών. 830 00:43:10,450 --> 00:43:13,590 >> Αυτό που δεν κάναμε πέρυσι ήταν ένα σύνολο πρόβλημα που παραμένει 831 00:43:13,590 --> 00:43:14,810 παρ 'όλα αυτά ένα από τα αγαπημένα. 832 00:43:14,810 --> 00:43:18,400 Αν έχετε πάει ποτέ σε shuttle.cs50.net, θα δείτε ένα χρήστη 833 00:43:18,400 --> 00:43:19,670 διεπαφή λίγο σαν αυτό. 834 00:43:19,670 --> 00:43:23,530 Αλλά πριν από δύο χρόνια, η τάξη εφαρμογή, χρησιμοποιώντας το Google Maps και το 835 00:43:23,530 --> 00:43:28,570 Google Earth plug-in και λίγο καταλαβαίνω με την οδήγηση γύρω από την πανεπιστημιούπολη, 836 00:43:28,570 --> 00:43:33,290 έτσι ώστε ο στόχος αυτού του παιχνιδιού ήταν, όπως μπορείτε να δείτε μερικά από τα πρόσωπα, 837 00:43:33,290 --> 00:43:37,530 είναι να οδηγήσετε γύρω από την πανεπιστημιούπολη ψάχνει για προσωπικού, οι υπότροφοι διδασκαλίας και ΑΠ, και 838 00:43:37,530 --> 00:43:40,080 Όταν το κάνετε, θα τους ωθούσε στο λεωφορείο σας. 839 00:43:40,080 --> 00:43:44,035 Κανένας από αυτούς που πράγματι φαίνεται να είναι εδώ, έτσι θα πάμε να εισάγετε ένα εξαπατήσει κώδικα. 840 00:43:44,035 --> 00:43:47,150 >> [Γέλια] 841 00:43:47,150 --> 00:43:48,430 >> DAVID MALAN: Εκεί πάμε. 842 00:43:48,430 --> 00:43:49,240 Εντάξει. 843 00:43:49,240 --> 00:43:51,750 Και εδώ τώρα είναι το προσωπικό δένεται σε όλη την πανεπιστημιούπολη. 844 00:43:51,750 --> 00:43:54,530 Και όπως μπορείτε να δείτε, στη δεξιά πλευρά πλευρά της οθόνης, το λεωφορείο 845 00:43:54,530 --> 00:43:55,510 έχει κενές θέσεις. 846 00:43:55,510 --> 00:43:59,000 Και ο στόχος ήταν να γράψω το κώδικα με την οποία για την προσομοίωση αυτή 847 00:43:59,000 --> 00:44:01,790 οδήγηση και μαζεύοντας και απόθεση εκτός των επιβατών. 848 00:44:01,790 --> 00:44:04,960 Εκείνο το ένα, επίσης, χρησιμοποιώντας μια γλώσσα ονομάζεται JavaScript. 849 00:44:04,960 --> 00:44:10,030 Έτσι, συνειδητοποιούν ότι τα προγράμματα σαν και αυτό θα είναι στην ίδια τροχιά μας αυτό 850 00:44:10,030 --> 00:44:10,910 έτος, καθώς και. 851 00:44:10,910 --> 00:44:13,640 >> Όσον αφορά, τώρα, της πρόσθετης στήριξης, έχουμε ώρες γραφείου. 852 00:44:13,640 --> 00:44:16,520 Όπως ίσως έχετε δει στο σπίτι σας τραπεζαρία ή στο Annenberg, 853 00:44:16,520 --> 00:44:19,280 θα είμαστε στην τραπεζαρία σπίτι αίθουσες τέσσερις νύχτες την εβδομάδα - 854 00:44:19,280 --> 00:44:24,450 Leverett, Pfoho, Eliot και Annenberg αυτό το έτος, 20:00 μ.μ. - 23.00μμ. 855 00:44:24,450 --> 00:44:26,830 Και τι σκεφτήκαμε να κάνουμε αυτό το έτος είναι κάτι λίγο διαφορετικό. 856 00:44:26,830 --> 00:44:29,650 >> Αν έχετε ακούσει φήμες πέρυσι ότι ήταν λίγο πολύ άγχος, αυτό 857 00:44:29,650 --> 00:44:32,800 ώρες γραφείου έτους, όπως θα περιγράψουμε την επόμενη εβδομάδα, θα είναι πιο οργανικά, 858 00:44:32,800 --> 00:44:36,900 σύμφωνα με την οποία κατά την άφιξη, θα αποστέλλονται σε ένα συγκεκριμένο τραπέζι 859 00:44:36,900 --> 00:44:39,860 όπου περιμένουν πολλά μέλη του προσωπικού, και εμείς θα κάνουμε τα πράγματα πολύ πιο 860 00:44:39,860 --> 00:44:40,440 οργανικά. 861 00:44:40,440 --> 00:44:43,740 Δεν υπάρχει πλέον ουρά, όχι περισσότερο iPad, αλλά μάλλον έχει πιο στενή 862 00:44:43,740 --> 00:44:47,300 συζητήσεις γύρω από ένα τραπέζι μόλις οκτώ ή έτσι ώστε οι μαθητές, έτσι ώστε να 863 00:44:47,300 --> 00:44:50,880 προσέγγιση η αίσθηση του τι άλλο θα ήταν μια πολύ μικρότερη τάξη. 864 00:44:50,880 --> 00:44:54,120 >> Προσφέρουμε, επίσης, ότι αυτά τα πράγματα ονομάζονται περάσματα, βίντεο γυρίστηκε στην 865 00:44:54,120 --> 00:44:57,330 μετατεθεί κατά ένα από τη διδασκαλία του μαθήματος υποτρόφων, Zamyla, στο οποίο 866 00:44:57,330 --> 00:45:00,690 βόλτες σας μέσα από το πρόβλημα της εβδομάδας σύνολα, προσφέροντας συμβουλές και κόλπα για το 867 00:45:00,690 --> 00:45:02,640 προκλήσεις που βάζουν μπροστά. 868 00:45:02,640 --> 00:45:06,230 Και αντιστρόφως, μετά από σύνολα πρόβλημα είναι οφείλεται, κατά το τρέχον έτος, θα κυκλοφορήσει, 869 00:45:06,230 --> 00:45:09,100 μικρό κλιπ καλέστε νεκροψίες που πραγματικά σας καθοδηγήσει 870 00:45:09,100 --> 00:45:13,630 λύσεις εκπρόσωπο, τόσο καλή και κακό, μέσω του οποίου μπορείτε να συμπεράνουμε πως 871 00:45:13,630 --> 00:45:17,550 θα μπορούσατε να έχετε ή θα πρέπει να έχουν εφαρμοστεί δική σας λύση. 872 00:45:17,550 --> 00:45:20,500 >> Και τι θα προσφέρει για πρώτη φορά το τρέχον έτος, καθώς, ιδιαίτερα 873 00:45:20,500 --> 00:45:23,420 για τους φοιτητές που κάνουν χρήση του μαθήματος άλλα 874 00:45:23,420 --> 00:45:28,580 πόρους, αλλά παρ 'όλα αυτά αγωνίζονται όλα πάρα πολύ, η πορεία 875 00:45:28,580 --> 00:45:33,030 το ίδιο θα ζεύγος τους φοιτητές, όπως το επιτρέπουν οι πόροι, με τους δασκάλους, έτσι ώστε 876 00:45:33,030 --> 00:45:35,840 έχετε μια πολύ πιο οικεία ευκαιρία από το σπίτι αίθουσες φαγητού 877 00:45:35,840 --> 00:45:38,700 επιτρέπουν την one-on-one βοήθεια. 878 00:45:38,700 --> 00:45:42,780 >> Τώρα, μια τελική ματιά σε μερικά από τα παιχνίδια τέλος στο θέαμα. 879 00:45:42,780 --> 00:45:44,580 Ίσως να είναι εξοικειωμένος με το CS50 Hackathon. 880 00:45:44,580 --> 00:45:48,120 Λοιπόν, έρχεται αυτό το Δεκέμβριο, από τις 8:00 Μ.μ. έως 7:00 π.μ., στην αρχή της 881 00:45:48,120 --> 00:45:51,410 Ανάγνωση Περίοδο, θα είναι μια ευκαιρία για να συγκεντρωθούν με τους συμμαθητές - 882 00:45:51,410 --> 00:45:53,130 Αυτό θα είναι περίπου 21:00 - 883 00:45:53,130 --> 00:45:56,550 κατά την οποία θα βουτήξει τελικά σας υλοποίησης του έργου, παράλληλα με 884 00:45:56,550 --> 00:45:59,910 συμμαθητές, φίλους, και τα τρόφιμα. 885 00:45:59,910 --> 00:46:03,680 Αυτό θα είναι περίπου 01 π.μ., όταν η πρώτη παρτίδα των τροφίμων έφτασε. 886 00:46:03,680 --> 00:46:08,470 Και αυτό είναι περίπου 04 πμ ότι συγκεκριμένο έτος στο CS50 Hackathon. 887 00:46:08,470 --> 00:46:12,000 >> Αλλά η πραγματική κορύφωση του μαθήματος είναι γραφτό να το Fair CS50, μια πανεπιστημιούπολη σε όλη την 888 00:46:12,000 --> 00:46:15,790 Έκθεση της δικής τελικών σχεδίων σας, με το οποίο η οικογένεια και οι φίλοι είναι όλοι 889 00:46:15,790 --> 00:46:18,730 κάλεσε, ως recruiters μας και τους φίλους μας από τη βιομηχανία. 890 00:46:18,730 --> 00:46:22,170 Αυτό, για παράδειγμα, είναι μια γεύση από το 2.000 και πλέον ανθρώπους που έχουν παρακολουθήσει 891 00:46:22,170 --> 00:46:23,160 τελευταία χρόνια. 892 00:46:23,160 --> 00:46:27,180 Εκφράσεις όπως αυτό δεν είναι ασυνήθιστο, και ομοίως να κάνετε σας 893 00:46:27,180 --> 00:46:29,660 συμμαθητές χαρούν τα πράγματα έχετε καταφέρει. 894 00:46:29,660 --> 00:46:33,170 >> Και στην πραγματικότητα, προς το σκοπό αυτό, έχουμε μια start-of-διάρκειας εκδήλωση, καθώς και. 895 00:46:33,170 --> 00:46:37,400 Αν τα πράγματα όπως αυτό έκκληση σε σας, ή είστε τουλάχιστον περίεργος ως προς αυτό 896 00:46:37,400 --> 00:46:41,590 αυτό, γνωρίζουμε ότι μια νέα παράδοση του Φυσικά ονομάζεται CS50 Day παζλ. 897 00:46:41,590 --> 00:46:45,710 Και αυτό καθιερώθηκε ένα ζευγάρι των χρόνια πίσω για να πραγματικά να σηματοδοτήσει στην πανεπιστημιούπολη 898 00:46:45,710 --> 00:46:48,930 ότι η επιστήμη των υπολογιστών δεν είναι για προγραμματισμό, και δεν είναι βέβαιο ότι 899 00:46:48,930 --> 00:46:51,960 για την αγκαλιάζει μόνο οι φοιτητές οι οποίοι έχουν προηγούμενη εμπειρία. 900 00:46:51,960 --> 00:46:54,200 Είναι πραγματικά για την επίλυση των προβλημάτων γενικότερα. 901 00:46:54,200 --> 00:46:57,360 >> Και έτσι Puzzle Day, κατά τη διάρκεια των τελευταίων χρόνια τώρα, έχει εξελιχθεί σε ένα ωραίο 902 00:46:57,360 --> 00:47:00,500 συνεργασία με τους φίλους μας στο Facebook, σύμφωνα με την οποία θα υπάρξει fabulous 903 00:47:00,500 --> 00:47:04,830 βραβεία και πίτσα κατά μήκος του ποταμού σε το i-lab το ερχόμενο Σάββατο. 904 00:47:04,830 --> 00:47:09,180 Επικεφαλής σε αυτήν τη διεύθυνση URL με δύο ή τρεις τους φίλους, αν θα θέλατε να συμμετέχετε 905 00:47:09,180 --> 00:47:10,830 σε αυτή τη νέα παράδοση. 906 00:47:10,830 --> 00:47:14,180 >> Έτσι θα ήθελα να σας ζητήσω να κρατήσει ένα πράγμα στο μυαλό, και έχουμε μόνο ένα 907 00:47:14,180 --> 00:47:17,070 δύο λεπτά κλιπ στο οποίο να κλείσει σήμερα. 908 00:47:17,070 --> 00:47:19,640 73% είναι ο αριθμός να θυμόμαστε. 909 00:47:19,640 --> 00:47:23,900 Κέικ, επίσης, θα σας περιμένουν έξω από αυτό transept όπως διακόψουμε σε μόλις ένα 910 00:47:23,900 --> 00:47:26,710 δυο στιγμές, η οποία είναι μια παράδοση του μαθήματος, καθώς και. 911 00:47:26,710 --> 00:47:29,860 Αλλά αυτό είναι το βασικό απόσπασμα από το διδακτέα ύλη μαθήματος που πρέπει να θυμάστε. 912 00:47:29,860 --> 00:47:32,820 Αυτό που τελικά έχει σημασία σε αυτό το μάθημα Δεν είναι τόσο πολύ πού θα καταλήξουμε 913 00:47:32,820 --> 00:47:36,580 σε σχέση με τους συμμαθητές σας, αλλά πού σας, στην Εβδομάδα 12, καταλήγουν σε σχέση με 914 00:47:36,580 --> 00:47:37,960 τον εαυτό σας στην Εβδομάδα 0. 915 00:47:37,960 --> 00:47:43,670 >> Αλλά η γεύση που θα σας αφήσει σήμερα εδώ είναι αυτό το τελευταίο εδώ 916 00:47:43,670 --> 00:47:47,580 από την ίδια Daniel μας, που έκανε την wrdly βίντεο πριν από λίγο. 917 00:47:47,580 --> 00:47:50,000 Σας αφήνω με αυτή την αναλαμπή το τι μέλλει γενέσθαι. 918 00:47:50,000 --> 00:47:53,360 Και καθώς το κάνουμε αυτό, αν θα μπορούσαμε να έχουμε CS50 προσωπικό από το μπροστινό μέρος του δωματίου 919 00:47:53,360 --> 00:47:57,280 να έρθει σε μέχρι το στάδιο να ζωγραφίσει όλα το περισσότερο από μια οπτική εικόνα ως προς 920 00:47:57,280 --> 00:47:59,100 τι σας περιμένει αυτό το έτος - 921 00:47:59,100 --> 00:48:00,350 να πάρει δύσκολη. 922 00:48:00,350 --> 00:48:02,200 923 00:48:02,200 --> 00:48:05,188 Θα ολοκληρώσω με αυτό εδώ στην οθόνη. 924 00:48:05,188 --> 00:48:18,634 >> [Παίζει μουσική] 925 00:48:18,634 --> 00:48:21,124 >> DAVID MALAN: Αυτό είναι CS50. 926 00:48:21,124 --> 00:50:00,226 >> [MUSIC - MATT & KIM, "Είναι εντάξει"] 927 00:50:00,226 --> 00:50:03,245 >> ΟΜΙΛΗΤΗΣ 1: I love CS50 περισσότερο από τις γάτες. 928 00:50:03,245 --> 00:50:06,030 >> ΟΜΙΛΗΤΗΣ 2: Whoaaaa! 929 00:50:06,030 --> 00:50:06,990 >> [Γέλια] 930 00:50:06,990 --> 00:50:08,140 >> DAVID MALAN: Αυτό, λοιπόν, είναι CS50. 931 00:50:08,140 --> 00:50:10,050 Θα σας δούμε την Παρασκευή. 932 00:50:10,050 --> 00:50:13,370 >> [Χειροκροτήματα και επευφημίες] 933 00:50:13,370 --> 00:50:17,540 >> Αφηγητής: Στην επόμενη CS50, μια σκηνή demo δεν πάει όπως έχει προγραμματιστεί. 934 00:50:17,540 --> 00:50:19,080 >> DAVID MALAN: Θέλουμε να βρούμε Mike Smith σε αυτό το βιβλίο του τηλεφώνου. 935 00:50:19,080 --> 00:50:20,380 Λοιπόν, αυτό είναι το ένστικτό σας; 936 00:50:20,380 --> 00:50:23,750 Θα ήθελα να πηδούν περίπου στη μέση της ο τηλεφωνικός κατάλογος, ματιά κάτω, βλέπουμε ότι 937 00:50:23,750 --> 00:50:26,830 Είμαι στο M, και τώρα ξέρω ότι ο Mike Smith δεν είναι προς τα αριστερά. 938 00:50:26,830 --> 00:50:27,840 Αυτός πρέπει να είναι προς τα δεξιά. 939 00:50:27,840 --> 00:50:30,515 Και σε αυτό το σημείο, θα μπορεί κυριολεκτικά δάκρυ - 940 00:50:30,515 --> 00:50:33,300 σε αυτό το σημείο, μπορούμε κυριολεκτικά δάκρυ - 941 00:50:33,300 --> 00:50:36,490 σε αυτό το σημείο, μπορούμε μεταφορικά δάκρυ τον τηλεφωνικό κατάλογο στη μέση. 942 00:50:36,490 --> 00:50:38,954 >> [UKELELE γρατζούνισμα]