[Παίζει μουσική] ΟΜΙΛΗΤΗΣ 1: Εντάξει, ο καθένας. Καλώς ήλθατε στο τελευταίο τμήμα σας μαζί μου. Ήταν ακριβώς το εξάμηνο. Δεν μπορώ να πιστέψω αυτό είναι, όπως, εβδομάδα 12 ή 11, κάτι τέτοιο. Αλλά επειδή είναι η τελευταία μας τμήμα, έχουμε πολλά γλυκά. Και Πάω να προσπαθήσουμε και να σας όπως και εγώ prep μπορούμε για κουίζ σας την Τετάρτη. Έτσι, κατά πάσα πιθανότητα δεν είναι ο καλύτερος τρόπος για να, όπως, τέλος τμήμα με κριτική κουίζ. Αλλά θα προσπαθήσουμε και να κάνει τη διασκέδαση. Και υπάρχει πάντα καραμέλα. Έτσι, ελπίζουμε, ότι θα το κάνουμε καλύτερο. Κουίζ σας πρόκειται να είναι αρκετά πολύ το ίδιο πράγμα όπως Κουίζ Μηδέν. Είναι πρόκειται να είναι η ίδια μορφή, το ίδιο μήκος. Θα είναι σε δωμάτια διάσπαρτα σε όλη την πανεπιστημιούπολη, επειδή υπάρχει είναι κοντά σε 900 από εσάς, και δεν μπορούμε να όλα κρατάτε στα δωμάτια, όπως αυτό. Έτσι να είστε βέβαιος να εξετάσει το σύνολο των το κουίζ Ένα τεκμηρίωση στην ηλεκτρονική διεύθυνση cs50.harvard.edu απόψε ή αύριο το βράδυ. Βεβαιωθείτε ότι ξέρετε πού βρίσκεστε πηγαίνει, τι χρειάζεστε για να φέρει. Πραγματικά, το μόνο που χρειάζεται για να φέρει τον εαυτό σας και ένα μολύβι, και θα πρέπει να είναι μια χαρά. Οι ερωτήσεις θα είναι πάρα πολύ το ίδιο. Θα υπάρξει πιθανώς ένα ζευγάρι πολλαπλής επιλογής, μια σύντομη απάντηση ζευγάρι, κάποια κωδικοποίηση, ίσως κάποια σωστού / λάθους, ταιριάζουν τα είδη των πραγμάτων. Έτσι δεν θα πρέπει να είναι πάρα πολύ έκπληκτος από την μορφή. Τι μπορεί να προκαλεί έκπληξη είναι η το μήκος, το οποίο, κατά τα προηγούμενα έτη, έχει πολύ περισσότερο. Το έτος μου, δεν έχω μια ενιαία φίλο ότι θυμάμαι την ολοκλήρωση της εξέτασης. Υπήρχαν, όπως η σκλήρυνση σελίδες μείνει κενό. Έτσι ώστε το μήκος μπορεί να είναι είδος του αποπροσανατολισμένο μόνο και μόνο επειδή σε μερικά χρόνια, έχει ήταν πολύ περισσότερο από ό, τι ένα κουίζ. Δεν έχω ιδέα τι είναι πρόκειται να είναι όπως το τρέχον έτος, αλλά αυτό είναι κάτι που πρέπει να γνωρίζει. Επιπροσθέτως, η difficulty-- άνθρωποι τείνουν να βρείτε Κουίζ Ένα πολύ περισσότερα δύσκολο από ό, τι Κουίζ Μηδέν. Και πάλι, ξέρεις, αν είστε το είδος του περπατήματος έξω αισθάνεται λίγο άβολα επειδή δεν κάνατε καθώς και νόμιζες ή θα αισθάνεστε σαν να μην είχε κάνει, καθώς όπως κάνατε σε ένα κουίζ One, να θυμάστε ότι υπάρχουν πιθανώς Πολλοί άλλοι άνθρωποι αισθάνονται αυτόν τον τρόπο. Θα ήταν σίγουρα ένας από αυτούς τους ανθρώπους. Κουίζ ένα, όπως, μου έριξε για ένα βρόχο. Και οι φίλοι μου έχουν αυτή τη μεγάλη εικόνα τους στο JP Licks είδος του με αυτές τις τεράστιες sundaes, είναι σαν, Κουίζ Ένα, και αναζητούν σαν να είσαι σε δάκρυα. Γι 'αυτό είναι μια γενική αίσθηση. Είναι μια σκληρή δοκιμασία, είναι μια σκληρή κουίζ. Προφανώς, αν βγει και να σας νιώθετε σαν να ήταν συγκλονιστικό, μεγάλη για σένα. Αλλά ξέρω ότι είστε πιθανώς not-- είστε σχεδόν σίγουρα δεν και μόνο αν τα πόδια σας έξω συναίσθημα όπως, ρε, κατά πάσα πιθανότητα θα μπορούσε να πάρει καλύτερα. Είναι σκληρό. MM-HM. ΚΟΙΝΟ: Πόσο αξίζει σε σχέση με [δεν ακούγεται]; ΟΜΙΛΗΤΗΣ 1: Αξίζει το ίδιο. Ναι. Αλλά και πάλι, πρόκειται επίσης να είναι επηρεάζεται από το πόσο η υπόλοιπη τάξη κάνει, πως το τμήμα σας κάνει, πώς έχετε βελτιωθεί με την πάροδο του χρόνου. Η ταξινόμηση είναι ένα μικρό κομμάτι από ένα μαύρο κουτί. Έτσι, ό, τι ο πραγματικός αριθμός ή το ποσοστό που παίρνετε δεν είναι απαραίτητα αρέσει άμεσα συσχετίζεται με το βαθμό θα πάμε για να πάρει. Υπάρχει πολλή παράγοντες που πηγαίνουν σε αυτό. Έτσι, με αυτό, θα πάμε να περάσει από κάποια κριτική κουίζ. Είμαι ακριβώς πρόκειται να τρέξει αυτό όπως την τελευταία φορά για σας παιδιά. Έχω όλες τις απαντήσεις να Κουίζ Ένα από πέρυσι. Έτσι, αν εσείς θέλετε να τραβήξετε ότι με δική σας υπολογιστές, αν έχετε πάρει αυτό εξετάσεις πριν και έχετε ερωτήσεις, Σκεφτόμουν θα μπορούσαμε μόλις περάσουν μερικά από τα πιο δύσκολα σε αυτό. Έτσι, μπορούμε να μιλήσουμε γι 'αυτό, ίσως να πάρετε μια λίγο περισσότερη διορατικότητα στη διαίσθηση πίσω από κάποιες αυτά τα ερωτήματα, πώς να τους πλησιάσει. Όπως επίσης, όπως την τελευταία φορά, Έχω ένα κατάστρωμα 100-slide ότι έχει ουσιαστικά όλα των σλάιντ που θέλω έχουν ετοιμάσει για τις προηγούμενες ενότητες από την τελευταία quiz-- εγώ σας έχουν σε αυτό το κατάστρωμα. Έτσι, μπορούμε να πάμε μέσα σχεδόν τίποτα ότι έχουμε μιλήσει για εκ των προτέρων ότι ίσως θέλουν λίγο περισσότερες διευκρινίσεις σχετικά. Θα μπορούσαμε να το κάνουμε αυτό πρώτα. Αλλά κατά τα άλλα, είμαι σούπερ ευτυχής μόνο για το είδος της εργασίας μέσα από αυτά τα προβλήματα με σας. Και είμαι πραγματικά εδώ για να επικεντρωθεί σε αυτό που εσείς νομίζετε θα ήταν πιο σημαντικό να επικεντρωθεί σε. Όπως, προφανώς, όλα τα αυτά τα πράγματα είναι σημαντικό. Ειδικά καθώς περνάμε από Κουίζ Ένα, Σίγουρα θα επισημάνω τα πράγματα όπως, Αχ, αυτό θα μπορούσε να είναι κάτι θέλετε πραγματικά να ξέρετε ή θέλετε να έχετε στο σκονάκι σας. Θα πρέπει να σας λέει τα πράγματα όπως το είδος του περάσει. Έτσι, σε αυτό το σημείωμα, υπάρχουν πράγματα εκεί ότι εσείς θα ήθελε να πάει πάνω; Επίσης, αν δεν το έχετε στο κατάστρωμα μου, μπορούμε να σηκώσει κάτι στο διαδίκτυο, ή μπορούμε να προσπαθήσουμε και να κάνουμε μέχρι ένα παράδειγμα σχετικά με τη μύγα. Αλλά οποιαδήποτε έννοιες που θα οι τύποι είναι λίγο ασαφής σχετικά. [? Ο Brian?] Κάνατε have-- ΚΟΙΝΟ: Ω, είναι σωρευτικά; Όπως είναι τα πράγματα στο Κουίζ Μηδέν πρόκειται να είναι εδώ; ΟΜΙΛΗΤΗΣ 1: Είναι σωρευτικά, αλλά είναι πολύ περισσότερα των έμφαση στα πράγματα από την τελευταία κουίζ σας. Έτσι, προφανώς, εσείς έχετε μάθει για τις μεταβλητές, και βρόχους, και των συνθηκών. Και δεν είναι όπως εκείνες που μόλις πάει μακριά, επειδή είναι και προφανώς εγγενής σε όλα άλλο που έχουμε μάθει τώρα. Μπορεί να υπάρχει μια ερώτηση επί των ειδών, ή εκεί μπορεί να είναι ένα ζήτημα σε διαφορετικές αναζητήσεις. Ή θα μπορούσε να υπάρχει ένα ζευγάρι ερωτήσεις σχετικά με κάτι που ίσως που έχουν να κάνουν με την κατάρτιση ή διαφορετικά λάθη. Αλλά αν έχετε κοίταξε Κουίζ Ένα από πέρυσι, θα παρατηρήσετε ότι είναι πολύ επικεντρώθηκε σε πράγματα που έχουν συμβεί από την τελευταία κουίζ σας. Γιατί είναι ότι η πόρτα κλειδωμένη πάντα; Είναι πραγματικά με ενοχλεί. Επειδή προσπαθώ πάντα να περάσει μέσα από αυτό. Έτσι, αυτό είναι λίγο πολύ πώς το κουίζ θα είναι. Έτσι, οποιεσδήποτε έννοιες εκεί ότι εσείς θα ήθελε να πάει πάνω; Ή μπορούμε να πηδήσει δεξιά σε απλά κοιτάζοντας Κουίζ Ένα από τον περασμένο χρόνο και το είδος της μετάβασης μέσω της πρακτικής ερωτήσεις εκεί. Μπορούμε επίσης να στραφούν και πίσω. Αυτό δεν είναι ένα one-time είδος του πράγματος. Οποιεσδήποτε ερωτήσεις; Ναι. ΚΟΙΝΟ: Θα ήθελα να ρωτήσω ένα ερώτηση σχετικά με another-- ΟΜΙΛΗΤΗΣ 1: Ένας άλλος ένας; ΚΟΙΝΟ: Αυτό είναι από άλλο ένα έτος. ΟΜΙΛΗΤΗΣ 1: Ναι. Μπορούμε επίσης να κάνουμε άλλο ένα έτος. ΚΟΙΝΟ: Εντάξει. Έτσι, για το 2011. ΟΜΙΛΗΤΗΣ 1: 2011. Ooh, αυτό ήταν το έτος πριν από μένα. Επιτρέψτε μου να τραβήξει αυτό επάνω. ΚΟΙΝΟ: νομίζω. ΟΜΙΛΗΤΗΣ 1: Αυτή η πτυχή αναλογία ρίχνει μακριά μου. ΚΟΙΝΟ: 11 και 12. ΟΜΙΛΗΤΗΣ 1: 11 και 12. ΟΚ. Λοιπόν, εδώ, γιατί δεν το κάνουμε αυτό; Μπορείτε guys-- όλοι απλά πάρτε ένα ζευγάρι λεπτά για να κοιτάξετε μέσα από κουίζ. Και θα καταρτίσει μια λίστα. Και τότε θα πάμε μέσα από αυτά. Εντάξει; Αν πάρω ένα μάτσο από αυτά τα πράγματα που έχει συσταθεί. ΟΚ. Είμαι ακριβώς πρόκειται να γράψω τα πράγματα στο χαρτί. 2011, 11 και 12; Είμαι ακριβώς πρόκειται να αλλάξει αυτή η οθόνη. ΟΚ. Αυτό είναι καλύτερο. Η υπέρβαση αυτή. Εντάξει. Κάποιος άλλος να έχει οποιαδήποτε άλλη που θα θέλατε να ξεκινήσετε; Επίσης, ξέχασα να πω, αν θέλετε περισσότερο από μια ομάδα ανθρώπων που μιλούν σε σας και απλά να σας δώσω μια ρωγμή Φυσικά στις τελευταίες έξι εβδομάδες, διατρέχουμε μια κριτική συνεδρία 7:00 έως τις 8:30 απόψε στη Βορειοδυτική B103, που επίσης συνέβη τελευταία φορά, όπου πρόκειται να να μου, Χάνα, Daven, με Gabe και Rob είδος της βοήθειας από το περιθώριο της ακριβώς το είδος του ρίχνουν όλα οι πληροφορίες που μπορεί να θέλετε να έχετε στο σκονάκι σας, κάθετος, γνωρίζουν σε γενικές γραμμές εκεί. ΚΟΙΝΟ: Αυτό είναι, επίσης, σε απευθείας σύνδεση, έτσι δεν είναι; ΟΜΙΛΗΤΗΣ 1: Είναι, επίσης, σε απευθείας σύνδεση. Έτσι, μπορείτε επίσης να μείνουν έξω από αυτό icky καιρικές συνθήκες, πηγαίνετε στο dorm σας, και ζωντανής ροής, αν θέλετε. Είμαι βέβαιος ότι πολλοί από people-- Ξέρω ότι θα ήταν να το κάνουμε αυτό, αν ήμουν στη θέση σας. ΟΚ. Γιατί λοιπόν να μην αρχίσουμε with-- ενώ εσείς guys-- ελπίζουμε, ψάχνετε μέσα. Αν όχι, θα μπορούσε να ξεκινήσει μόνο εργασίας μέσω διαφορετικά πράγματα για Κουίζ Ένα από το προηγούμενο έτος, εκτός αν έχουν συγκεκριμένες ερωτήσεις. Θα ξεκινήσουμε με αυτό ερώτηση εδώ για στοίβες. Έτσι κάνει ο καθένας θυμάται είδος του τι μια στοίβα είναι; Πώς έχουμε την τάση to-- μπορεί κανείς απλά να δώσει με μια γενική περιγραφή του μια στοίβα; Ένας τύπος δομής δεδομένων. ΟΚ. Γι 'αυτό είναι ένα από τα δομές δεδομένων που έχουμε αναμένουμε από εσάς να είναι εξοικειωμένοι with-- όπως στοίβες, πίνακες, ουρές, ούτω καθεξής. Ναι. ΚΟΙΝΟ: Σαν Πρώτη Σε, Τελευταία out, κάτι. ΟΜΙΛΗΤΗΣ 1: Είναι First In, Τελευταία Out. Ακριβώς. Έτσι, μια στοίβα είναι ακριβώς τι νομίζουμε περίπου, όταν σκεφτόμαστε μιας στοίβας των πραγμάτων. Έτσι, μια στοίβα πλακών. Το πρώτο πιάτο βάζετε κάτω πρόκειται να είναι στο κάτω μέρος, και πρόκειται να είναι η τελευταία αυτό που σας αφαιρούν, στο τέλος. Επειδή συσσωρεύονται. Και παίρνετε το ένα από το κάτω μέρος, συνήθως, τα πράγματα συντριβή και να σπάσει. Έτσι στοίβες μπορείτε να σκεφτείτε ακριβώς όπως μια στοίβα των πλακών. Ή το παράδειγμα που μας αρέσει πάντα να χρησιμοποιήσετε είναι στις αίθουσες Α, έχετε τους δίσκους, από όπου και αν όλα στοιβάζονται, και θα πάρουμε από την αρχή. Έτσι, η τελευταία σε είναι η πρώτη έξω. ΟΚ. Έτσι, στην προκειμένη περίπτωση, εμείς δείτε εμείς have-- Αναρωτιέμαι αν πραγματικά μπορώ να μεγεθύνετε σε λίγο. Έτσι, έχουμε αυτό το struct εδώ. Σωστά; Έτσι έχετε κάποια struct που έχει μερικά int αριθμούς ικανότητας. Λοιπόν, τι πιστεύουμε ότι εκπροσωπεί; Πρόκειται για μια σειρά με το μέγεθος της παραγωγικής ικανότητας. Έτσι, αυτό αντιπροσωπεύει πραγματικά στοίβα μας γενικά. Στοίβα μας είναι πραγματικά ακριβώς ένα συστοιχία με κάποιον αριθμό σετ που είναι το μέγιστο της, δηλαδή την παραγωγική ικανότητα του. Και τότε έχουμε κάποια μέγεθος int, η οποία θα παρακολουθείτε το μέγεθος του stack μας καθ 'όλη τη διάρκεια του όταν το χρησιμοποιείτε. Εντάξει; Σε αυτή την περίπτωση το δικαίωμα εδώ, λέμε ότι μας το μέγεθος του stack έχει αρχική τιμή 0. Έτσι, έχουμε μια κενή στοίβα τώρα. Και μετά θέλουμε να ολοκληρωθεί η εφαρμογή της ποπ έτσι ώστε να επιστρέφει το int στην κορυφή. Και στη συνέχεια αν είναι άδειο, επιστρέφει αρνητική 1. Εντάξει; Θέλω, λοιπόν, εσείς απλά πρέπει να σκεφτεί για το τι θα μπορούσαμε να κάνουμε εκεί. Τι θα μπορούσε να είναι ένα από τα πρώτα πράγματα που θα θέλετε να ελέγξετε; Υπάρχει ένα μεγάλο πράγμα εδώ. Όποτε says-- αν υπάρχει ποτέ κάποια Εάν δήλωση, όπως «Αν στοίβα είναι άδεια», ή "Εάν αυτό επιστρέφει null," ή "Εάν αυτό είναι ό, τι" - συγγνώμη. ΚΟΙΝΟ: Γράψτε μια δήλωση Αν. ΟΜΙΛΗΤΗΣ 1: Δεξιά. Θα μπορούσατε να γράψετε μια δήλωση Αν. Και αυτό είναι ίσως ένα από τα πρώτα πράγματα που θέλετε να ελέγξετε. ΟΚ. Κάθε φορά που σας δίνουν σαν ένα είδος υπόθεση γωνία όπως αυτό, αυτό είναι συνήθως ένα από τα πρώτα πράγματα θα πάμε για να κάνουν check-in κωδικό σας. Επίσης, κάτι που αναγνωρίζουν για το κουίζ είναι εάν έχετε μια αναποτελεσματική τρόπο να κάνουμε κάτι, να το γράψετε. Επειδή δεν είμαστε ταξινόμησης σας σχετικά με το σχεδιασμό, είμαστε ταξινόμησης σας σχετικά με την ορθότητα των κουίζ. Έτσι, ακόμα κι αν ξέρετε ότι είναι ένα σούπερ κακός τρόπος για να κάνουμε κάτι, αλλά λειτουργεί, γράψτε κάτω, εντάξει; Κυριολεκτικά, έχω δει τα παιδιά τελευταία year-- αν κοιτάξετε ένα περασμένου έτους, είναι σαν, κάνει την πυραμίδα Mario. Και κυριολεκτικά έκαναν "εκτύπωσης, χασίς, εκτύπωση, χασίς, χασίς, εκτύπωση, χασίς, χασίς, κατακερματισμού. " Αλλά είναι σωστό. Κάνει ό, τι το πει, έτσι δεν μπορείτε να πάρετε τα σημεία μακριά. Αν είστε κάτω για να το σύρμα, προφανώς, θα θέλετε να πάρετε μια πιο κομψή λύση, και η πιο κομψή λύση, θα πρέπει πιθανώς είναι λιγότερο κώδικα, το οποίο θα σημαίνει πιθανώς έχουν μεγαλύτερη πιθανότητα να είναι σωστός. Αλλά αν είστε όπως, ξέρετε τι, όχι, δεν έχω χρόνο, θα Γνωρίζω ότι αυτό είναι μια λύση, δεν είναι το καλύτερο, να το γράψετε. Και μπορείτε ακόμη και να γράψετε για το πλευρά, ξέρω ότι αυτό είναι τρομερό, αλλά ξέρω ότι δουλεύει. Έτσι, μόνο ένα heads-up. ΟΚ. Έτσι, προφανώς, το πρώτο πράγμα Είναι αυτή η δήλωση Αν. Λοιπόν, τι νομίζουμε ότι αυτό το Αν Δήλωση πρόκειται να είναι; Και στην πραγματικότητα, επιτρέψτε μου ανοιχτό up μεγάλη Sublime εκδότης μου. Πάω να κωδικοποιήσει αυτό και, στη συνέχεια, σας δείξω παιδιά, όταν το κάνει. Έτσι int ποπ. ΟΚ. Έτσι, αν έχουμε αυτό το int ποπ void-- έτσι προφανώς, Αυτό είναι κάποια συνάρτηση που παίρνει σε τίποτα και επιστρέφει έναν ακέραιο αριθμό, σωστά; Γι 'αυτό ακριβώς πρόκειται να μιλήσουμε για Αυτή η στοίβα που έχουμε δημιουργήσει. Έτσι απλά μεταφράζοντας αυτό το τελευταίο φράση, "εάν στοίβα είναι άδεια, ποπ πρέπει να επιστρέψει αρνητικό 1, "πώς θα μπορούσαμε να το κάνουμε αυτό; Έτσι Αν αυτό; Πώς ξέρουμε ότι η στοίβα είναι άδεια; Είναι ακριβώς το μέγεθος ισούται με 0. Stack.size ισούται με 0. Επίσης, είμαι το είδος της γραφής τυφλών εδώ. Έτσι, αν κάνω κάποιο typos-- OH, Επίσης ξέχασα να το αναφέρω αυτό. Την περασμένη εβδομάδα, έχω εντελώς κατάλαβα ποιο είναι το πρόβλημά μας ήταν με JavaScript. Μην κεφαλαιοποιήσει Ι και D. Θα πρέπει μόνο κεφαλαιοποιήσει Ι και να πάρει το στοιχείο από την id. Και αυτό ήταν όλο το σφάλμα. Έτσι, αν εσείς πηγαίνετε πίσω και πραγματικά να κοιτάξουμε μέσα στον κώδικα μου, αν απλά κάνει ό, τι δ πεζό, «ξεχνούν στοιχείο από Id," αυτό θα λειτουργήσει. Έτσι, όπως είχα υποσχεθεί, ήμουν πολύ κοντά. Απλώς κεφαλαιοποιούνται κάτι Δεν έπρεπε να, η οποία Είμαι βέβαιος ότι έχετε παιδιά είχαν στην τελευταία PSET σας. Έτσι, αν το μέγεθός μας ισούται με 0, τι θα έπρεπε να κάνω; ΚΟΙΝΟ: Επιστροφή αρνητική 1. ΟΜΙΛΗΤΗΣ 1: Επιστροφή αρνητική 1. Cool. Και τώρα τι κάνουμε; Θέλουμε να σκάσει κάτι μακριά. Τώρα αυτό είναι η περίπτωση όπου έχουμε κάτι. Μέγεθος μας είναι μεγαλύτερο από 1 ή μεγαλύτερη από το 0, έτσι δεν είναι; Στην πραγματικότητα έχουμε κάτι εκεί. Έτσι, αυτό που θέλουμε να κάνουμε είναι να θέλουν να επιστρέψουν εδώ. Εμείς πάμε να πούμε θέλουμε να επιστρέψει κορυφή της στοίβας. Εντάξει; Λοιπόν, πώς θα μπορούσαμε να το κάνουμε αυτό; Πώς μπορούμε να επιστρέψουμε στην κορυφή της στοίβας; Θυμηθείτε, στοίβα μας είναι μόνο μια σειρά, έτσι δεν είναι; Έχει κάποια ικανότητα ότι έχουμε δώσει. Όπως έχουμε βάλει τα πράγματα on-- ή πραγματικά, θα πάμε να γράψει "ώθηση" μετά από αυτό. Αν τα πράγματα είναι σε there-- ίσως μια εικόνα θα βοηθήσει. Χμ, μου αρέσει μεγάλα κιμωλία καλύτερα. Έτσι if-- και μπορείτε απλά σκεφτείτε αυτό ως stack μας. Έτσι, αυτό είναι 0, 1, 2. Δεν ξέρω γιατί κουτιά μου γίνονται όλο και μικρότερα. Αλλά εκεί. ΟΚ. Έτσι, αυτό είναι κάποια στοίβα με χωρητικότητα 5. Και ας πούμε ότι έχουμε κάτι εδώ και έχουμε κάτι εδώ. Έτσι, σε αυτό το σημείο, μας το μέγεθος είναι ίσο με αυτό; 2. Και αν θέλουμε να σκάσει κάτι μακριά από αυτό, αυτό σημαίνει ότι θέλουμε να πάρει απαλλαγούμε από αυτό το δικαίωμα εδώ. Εντάξει; Πώς, λοιπόν, θα επιστρέψουμε την τιμή αυτή; ΚΟΙΝΟ: Μέγεθος μείον 1. ΟΜΙΛΗΤΗΣ 1: Δεξιά. Έτσι, το μέγεθος μείον 1, ή μπορείτε θα μπορούσε να κάνει το μέγεθος μείον μείον. Αλλά δεν μπορούμε απλά να κάνουμε μέγεθος. Είναι μέσα σε ένα struct, σωστά; Έτσι stack.struct. ή stack.size. Αυτός είναι ο δείκτης μας εκεί. Εντάξει; Και τότε, αν κοιτάξουμε πίσω στο struct μας εδώ, παρατηρούμε ότι για να στην πραγματικότητα η πρόσβαση της συστοιχίας, πρέπει να κάνουμε stack.numbers να έχουν πρόσβαση στην πραγματικότητα ο πίνακας. Έτσι ώστε επιστρέφει στην κορυφή της στοίβας. Αλλά κάτι that-- αν εσείς βλέμμα στο πλήκτρο απάντησης, αυτό είναι το μόνο που να σας δώσω. Έτσι, αυτό είναι. Αλλά θα μπορούσε να υποστηριχθεί ότι είναι miss-- Ooh, δεν είναι αυτό που ήθελα. Θα μπορούσε να υποστηριχθεί ότι είναι λείπει κάτι, because-- ναι. ΚΟΙΝΟ: Μειώστε το μέγεθος. ΟΜΙΛΗΤΗΣ 1: Δεξιά. Πρέπει να μειώσετε το μέγεθος μας τώρα. Λοιπόν, τι είναι δύσκολο για Αυτό είναι μόλις επιστρέψει κάτι, η λειτουργία σας Θα έξοδο, έτσι δεν είναι; Έτσι, αυτό που μπορούμε να κάνουμε είναι στην πραγματικότητα μειώσετε το μέγεθος μας πρώτα. Και τότε μπορούμε απλά να stack.size. Μπορούμε να χρησιμοποιήσουμε μόνο stack.size ως δείκτης μας, δεν θα μπορούσε να είναι; Γιατί αν stack.size είναι 2, θα το ελαττώσει. Και γι 'αυτό είναι 1, το οποίο είναι η πραγματική μας Indice. Όταν μπορούμε να απαλλαγούμε από αυτό, εμείς στην πραγματικότητα έχουν μόνο ένα πράγμα στο παράταξη μας. Γι 'αυτό κάνει και τα δύο. ΚΟΙΝΟ: [δεν ακούγεται]; ΟΜΙΛΗΤΗΣ 1: Λοιπόν, σε αυτή την περίπτωση, μόλις επιστρέψαμε το στοιχείο στην κορυφή που βρίσκεται σε μας μέγεθος που είναι στην κορυφή. Αλλά δεν έχουμε κάνει τίποτα για να το μέγεθος αφού αφαιρεθεί το στοιχείο αυτό. Αυτό δεν έχει αλλάξει μέγεθος μας ακόμα. Αυτό το κάνει πραγματικότητα εγγενώς αλλάξετε το μέγεθος μας. Αλλά για να γίνει αυτό λίγο πιο σαφής, θα μπορούσατε να κάνετε stack.size μείον μείον. Για μένα, αυτό που κάνει, δεν ξέρω, λίγο πιο σαφής that-- αχ, ότι είστε πράγματι αλλάζει το μέγεθος και την επιστροφή του. Ο άλλος τρόπος ήταν μια χαρά, επειδή θα άλλαζαν και επιστροφή κατά τον ίδιο χρόνο. Αλλά αυτό είναι απλά ένας άλλος τρόπος για να γράψει αυτό που ήθελα να σας δείξω παιδιά. Μήπως αυτό έχει νόημα; Στοίβες, νομίζω, είναι πολύ πιο εύκολο από ό, τι ουρές. [Γέλια] ΟΚ. Μήπως έχετε οποιεσδήποτε συγκεκριμένες ερωτήσεις περίπου 11 και 12, ή just-- ΚΟΙΝΟ: Νομίζω ότι ήταν η στοίβα. ΟΜΙΛΗΤΗΣ 1: Το μέγεθος στοίβας; Κοινό: Ναι. ΟΜΙΛΗΤΗΣ 1: πέτυχα. ΟΚ. Ναι, μπορείτε να το κάνετε σε ένας από αυτούς τους δύο τρόπους. ΟΚ. Έτσι τώρα έχουμε το άλλο. Αυτό είναι πραγματικά περίεργο, όπως δεν έχει αυτό στην οθόνη μου. Έτσι, αν κοιτάξουμε εδώ, τώρα θέλουμε να ολοκληρωθεί η εφαρμογή της ώθησης, η οποία στην πραγματικότητα βάζει κάτι, πηγαίνει και εισάγει κάτι σε ουρά μας, ή σε στοίβα μας. Εντάξει; Έτσι, αν παρατηρήσετε, εμείς έχουν μερικά πράγματα. Έχουμε great-- μας αν όλα τα άλλα, κάθε φορά που έχουμε ένα από αυτά, εσείς πρέπει να πάρει τουλάχιστον το ήμισυ ένα σημείο, γιατί το μόνο που έχετε να κάνετε έχει μετατρέψει αυτό σε C. Και σας δίνουν το μισό από αυτό. Έτσι, «εάν μια στοίβα είναι πλήρης ή είναι αρνητική, Στη συνέχεια σπρώξτε πρέπει να επιστρέψει false. " Εντάξει; Έτσι θέλουμε μόνο θετικά ακέραιοι να είναι στην στοίβα μας. Εντάξει; Και αυτό πρόκειται να είτε return true ή false. Έτσι θα πρέπει να [δεν ακούγεται] bool. ΟΚ. Έτσι μετάφραση. ΚΟΙΝΟ: [δεν ακούγεται]. ΟΜΙΛΗΤΗΣ 1: Αχ, ευχαριστώ. Ναι. Αυτός είναι ο λόγος που σας έχω παιδιά. Int n. Τέλεια. Επειδή είμαστε βάζοντας κάτι για να στοίβα μας. Χρειαζόμαστε πραγματικά κάποια σειρά. ΟΚ. Έτσι, λαμβάνοντας μόνο την τελευταία γραμμή ότι που μας έδωσε, το είδος μας από τις περιπτώσεις γωνία, τι νομίζετε ότι έχουμε εδώ; Προφανώς, θα πάμε να έχουν κάποια περίπτωση. ΟΚ. Έτσι είπαμε, Αν στοίβα μας είναι πλήρως ή εάν η είναι αρνητική. Έτσι, μάλλον ευκολότερο να αρχίσετε με, οπότε αν το η είναι μικρότερο από 0 or-- θυμάστε ωραία σας ΚΑΙ και Ή φορείς εκεί. Πώς θα ελέγξετε για να δείτε αν στοίβα μας είναι πλήρης; Τι συμβαίνει; ΚΟΙΝΟ: Μέγεθος ίσης χωρητικότητας. ΟΜΙΛΗΤΗΣ 1: Ακριβώς. Τέλεια. ΟΚ. Και τι θέλουμε να κάνουμε εκεί; ΚΟΙΝΟ: Επιστροφή ψευδείς. ΟΜΙΛΗΤΗΣ 1: Επιστροφή ψευδείς. Τέλεια. Έτσι, στα μισά του δρόμου, σωστά; Τουλάχιστον, εσείς θα έχει το μισό από αυτό. Ας το σκεφτούμε αυτό. Έτσι, αυτό είναι η στοίβα θα αρχίσει με. Προσπαθούμε να θέσει κάποιο στοιχείο εδώ. Έχουμε ένα μέγεθος που είναι ίσο με το 2 τώρα. Έχουμε μια ικανότητα που αντιστοιχεί σε ποσοστό 5. Και ας πούμε ότι έχουμε κάποια n που είναι ίση με 3. Πρέπει λοιπόν να είσοδος 3 σε αυτό το χώρο. Και εμείς πρέπει να τον εισάγετε στο δείκτη 2. Σωστά; Λοιπόν, πώς θα μπορούσαμε να το κάνουμε αυτό; Προσπαθώντας να assign-- εμείς θέλουν να έχουν πρόσβαση σειρά μας. Έτσι stack.numbers. Αλλά με τι θα indice θέλουμε αυτό να είναι; ΚΟΙΝΟ: [δεν ακούγεται]. ΟΜΙΛΗΤΗΣ 1: Ναι. Stack.size. Και εμείς θέλουμε να την ίση n, σωστά; ΚΟΙΝΟ: [δεν ακούγεται]. ΟΜΙΛΗΤΗΣ 1: Ήμουν πραγματικά απλά κοιτάζοντας αυτό. Νομίζω ότι είναι λάθος. ΚΟΙΝΟ: Μην θέλετε το χώρο πέρα ​​από το τρέχον μέγεθος; ΟΜΙΛΗΤΗΣ 1: Λοιπόν, αν κοιτάξουμε εδώ, μεγέθους μας σε αυτό το σημείο είναι 2. Θέλουμε να πάμε στο δείκτη 2, επειδή αυτή είναι η κορυφή του σωρού μας. Έτσι θα έλεγα ότι θα πρέπει να είναι stack.size, και στη συνέχεια θα αυξήσει stack.size. Μήπως όλοι συμφωνούν; Νομίζω ότι συμφωνώ με αυτό. Εσείς μπορεί να υποστηρίξει μαζί μου αν θέλετε. Ή δεν υποστηρίζουν, αλλά μπορούμε να το συζητήσουμε αυτό. ΚΟΙΝΟ: [δεν ακούγεται]. ΟΜΙΛΗΤΗΣ 1: MM-hm, είναι όπου είναι ανοίξουν, λόγω της μηδενικής ευρετηρίασης. Έτσι, ενώ στο πρώτο μέρος, Νόμιζα ότι ήταν λάθος, και ήταν πραγματικά σωστό, αυτό μέρος, εγώ πραγματικά πιστεύω ότι ήταν λάθος. Θα έλεγα ότι θα πρέπει να Σίγουρα είσοδος εδώ. Νομίζω ότι όλοι συμφωνούμε έχουμε ένα μέγεθος 2. Αυτό είναι ακριβώς όπου θέλουν νέο αριθμό μας για να πάει. Έτσι stack.numbers σε stack.size πρέπει να ισούται με n. Και τότε θα αυξήσετε την stack.size. ++. Και τότε τι θέλουμε να κάνουμε; Υπάρχει ένα τελευταίο πράγμα που πρέπει να κάνουμε αν θέλουμε να εισαχθεί με επιτυχία αυτό; Επιστροφή αλήθεια. Και τώρα είστε έτοιμοι. Έτσι αισθάνομαι σαν να ήταν ολόκληρο το μείον μείον stack.size και stack.size ++ ότι μπέρδεμα τα πράγματα. Ugh. Έχω keep-- έχω αυτή τη σπασμωδική τάση να είναι πάντα χτύπημα Ελέγχου, S, γιατί ποτέ δεν θέλουν να χάσουν κάποια από τη δουλειά μου. Αλλά δεν χρειάζεται να το κάνουμε αυτό τώρα. ΟΚ. Έτσι, αυτό ήταν στοίβα. Cool. Υπάρχει κάτι εκεί; Μήπως εσείς βρείτε οποιαδήποτε άλλες ερωτήσεις που θέλετε ήθελα να πάω πάνω από τα προηγούμενα κουίζ; Αν δεν μπορούμε να το είδος των αρχίσουμε να μιλάμε μέσω Κουίζ Ένα από πέρυσι. Ναι. Κοινό: Για πρώτη μέρος, δεν το έκανα πραγματικά καταλάβετε πώς διαγράφεται ο αριθμός. Δεν είναι ακόμα εκεί; ΟΜΙΛΗΤΗΣ 1: Ο αριθμός είναι ακόμα εκεί. Αλλά αυτό που συμβαίνει είναι ότι επειδή έχετε είπε ότι η κορυφή της στοίβας σας είναι εδώ, όταν θα πάτε για να προσθέσετε κάτι στη στοίβα, αυτό θα το αντικαταστήσει μόνο. ΚΟΙΝΟ: Ω, εντάξει. ΟΜΙΛΗΤΗΣ 1: Ναι. Έτσι είναι σαν να ξεχάσει και είναι εκεί είδος των πράγμα που ακόμα κι αν είναι εκεί. ΚΟΙΝΟ: [δεν ακούγεται] ή τίποτα; ΟΜΙΛΗΤΗΣ 1: Όχι. Επειδή είμαστε σε μια συστοιχία, δεν έχετε να ανησυχείτε about-- θα πρέπει ακριβώς παρακάμψουν όταν το χρειάζεστε. Εντάξει. Οποιεσδήποτε άλλες ερωτήσεις; Αν όχι, απλά θα να αρχίσουν να εργάζονται μέσα. Ναι. ΚΟΙΝΟ: Λοιπόν, αυτό είναι για το 2013, αλλά απλά να περάσει από τα πράγματα SQL. ΟΜΙΛΗΤΗΣ 1: SQL; ΟΚ. Έτσι, αυτό είναι 26 έως 29. Κοινό: Ναι. ΟΜΙΛΗΤΗΣ 1: Εντάξει. Υπέροχο. Ας τραβήξει εκείνοι επάνω. Ω, κοιτάξτε. Μήπως εσείς απολαμβάνετε τον Steve Ballmer να μιλήσει, από τον τρόπο; Ήταν αρκετά ξεκαρδιστική, κατά τη γνώμη μου. Λατρεύω ότι κάθε φορά που φέρει επάνω του CS50 δικτυακό τόπο κατά τη διάρκεια της τμήμα, είναι σαν, ω, παρακολουθήσουν την ενότητα. Και είμαι σαν, mm. ΚΟΙΝΟ: Μπορούμε να το κάνουμε; ΟΜΙΛΗΤΗΣ 1: Θα το κάνουμε στο τέλος. Πώς σας φαίνεται αυτό; Επειδή ξέρω ρε παιδιά έχουν πάντα ήθελε. Γι 'αυτό και θα το κάνει στο τέλος. Ένας ερωτήσεις. ΚΟΙΝΟ: [δεν ακούγεται]. ΟΜΙΛΗΤΗΣ 1: Θα είναι μια μετα τμήμα. ΚΟΙΝΟ: Είναι σαν 5 δευτερόλεπτα. ΚΟΙΝΟ: Αλήθεια; ΚΟΙΝΟ: Είναι σαν 20 δευτερόλεπτα. [Παρεμβολή ΦΩΝΕΣ] [Γέλια] ΟΜΙΛΗΤΗΣ 1: Μου αρέσει ότι έχετε ήδη κάνει αυτό, το οποίο είναι αυτό που με κάνει πιο ευτυχισμένο. ΟΚ. 26. ΟΚ. Στην πραγματικότητα, είμαστε ακριβώς πρόκειται να αντικατοπτρίζουν αυτό τώρα, γιατί δεν μπορώ. Αυτό είναι ενοχλητικό. ΟΚ. Τώρα μπορώ να δω τα πάντα. Υπέροχο. ΟΚ. Έτσι, προφανώς, αυτό θα πρέπει να φέρει πίσω ωραίες αναμνήσεις από [; CSG?] Οικονομικών. Οι μισοί από εσάς έχετε για το δικό σας βαθμολογούνται τώρα. Το άλλο μισό θα φτάσω στο πολύ, πολύ σύντομα, το υπόσχομαι. Έτσι έχουμε κάποια πίνακα του SQL ότι είναι Λογαριασμοί εδώ. Πιθανώς παρόμοια με πίνακες χρήστη παιδιά σας ». Και έχουμε κάποιο αριθμό ότι ήταν ένα πρωτεύον κλειδί και αντιπροσωπεύει ένα 12-ψήφιο αριθμό λογαριασμού. Και η ισορροπία είναι πόσα χρήματα έχουν. Και η προεπιλεγμένη τιμή είναι 100. Και να τους δώσουμε 100 δολάρια κάθε φορά που ανοίγετε ένα λογαριασμό. Εύχομαι τράπεζα μου το έκανε αυτό. ΟΚ. Έτσι θέλουμε να ολοκληρωθεί το σχήμα του προσδιορίζοντας δίπλα στον αριθμό στην ισορροπία ο κατάλληλος τύπος SQL. Λοιπόν, τι πιστεύετε εσείς θα κάτι σαν σπασμωδική αντίδραση σας για τα είδη για αυτά τα δύο; ΚΟΙΝΟ: Int. ΟΜΙΛΗΤΗΣ 1: Ένας int. ΟΚ. Και τότε, για μια ισορροπία; Δεκαδικό. ΟΚ. Έτσι, το δικαίωμα δεκαδικό του. Int είναι κοντά. Είδος το μεγάλο πράγμα είναι αυτό Υπογράμμισε 12-ψήφιο αριθμό λογαριασμού. Κάθε φορά που έχουμε κάτι αυτό είναι μεγαλύτερο από οκτώ ψηφία, θέλουν μπορείτε να χρησιμοποιήσετε μεγάλα int, η οποία νομίζω ότι is-- ΚΟΙΝΟ: Είναι ότι ακριβώς SQL; ΟΜΙΛΗΤΗΣ 1: Είναι η μόνη φορά που έχω ακούσει του είναι SQL-- όπως χρησιμοποιώντας ένα μεγάλο int. Είναι ακριβώς για να σας δώσει μια λίγο μεγαλύτερη ακρίβεια, φροντίζοντας να μην είστε ξεχειλίζει πράγμα τύπου. Με κάθε ειλικρίνεια, νομίζω ότι αυτό είναι σίγουρα ένας από αυτούς όπου είναι σαν, ω, είναι γραφτό για τους ανθρώπους που έχουν λίγο περισσότερη γνώση του SQL. Εμείς ποτέ δεν μιλήσαμε για μεγάλες ints σε PSET σας. Έτσι είναι το είδος του σαν να είμαι αρκετά σίγουρος αν βάλετε int, ήταν το μισό πίστωσης. Και όπως είπα και πριν, θα υπάρχουν να είναι μερικές ερωτήσεις που είναι ακριβώς ως στόχο να σας τρικλοποδιά, έτσι ότι δεν μπορεί ο καθένας παίρνει 100. Επειδή φυσικά, εκεί είναι μερικοί άνθρωποι σε CS50 οι οποίοι έχουν κάνει αυτό για ομοειδή οκτώ χρόνια, και είστε όπως, τι κάνεις; Αλλά ναι. Δεκαδικό για την ισορροπία ήταν η προφανής. Και τότε μεγάλος int για τον αριθμό μόνο και μόνο επειδή του ότι, όπως υπογράμμισε 12ψήφιο. Κάθε φορά που κάτι είναι με έντονα γράμματα ή είναι υπογράμμισε, όπως, να δώσουν προσοχή σε αυτό. Εμείς δεν κάνουμε ότι ακριβώς επειδή. ΟΚ. Έτσι, "ας υποθέσουμε ότι η τράπεζα επιβάλλει $ 20 μηνιαία αμοιβή σε όλους τους λογαριασμούς. Με ποιο ερώτημα θα μπορούσε η τράπεζα εκπίπτει 20 δολάρια από κάθε λογαριασμό ακόμη και εάν προκύπτει από μερικά αρνητικά υπόλοιπα; " Ας αρχίσουμε λοιπόν απλό. Έχουμε τέσσερις βασικές εντολές για τον SQL, το οποίο είναι; Μήπως εσείς θυμάστε τα τέσσερα μεγάλα αυτά που σας είπα; UPDATE, DELETE, SELECT, και τοποθετήστε. Τέλεια. Πήρε αυτό. Λοιπόν, τι θεωρούμε ότι μπορεί είναι πιο χρήσιμη για αυτό; Εμείς are-- ΕΝΗΜΕΡΩΣΗ. Ακριβώς. Έτσι Update, επειδή ψάχνουμε σε λογαριασμούς που υπάρχουν ήδη. Έτσι θυμηθείτε γενική μας το είδος του πράγματος είναι ενημερωμένη. Και τότε τι έρχεται μετά από την ενημέρωση; Έχουμε κάποιο τραπέζι ότι είμαστε αναφορά. Έτσι, αν έχω σηκώσει Sublime again-- ΕΝΗΜΕΡΩΣΗ. Έτσι, αυτό είναι μια γενική μορφή. Έτσι έχουμε τραπέζι ΕΝΗΜΕΡΩΣΗ. Και τότε ποιο είναι το επόμενο πράγμα που έχουμε; Μπορείτε να κάνετε ΠΟΥ. Και τότε έχουμε κάποια προκριματικά εδώ. Και τότε τι έχουμε το επόμενο βήμα; Έχουμε κάποια SET-- κάτι ίσο με κάτι. Μπλα μπλα ισούται με. Ενημερώθηκε μπλα. Σωστά; Έτσι, αυτό είναι σαν το γενικό ιδέα για κάποια ενημέρωση. Εντάξει; Ας αρχίσουμε το γέμισμα αυτό με ό, τι θα έπρεπε να είναι. Λοιπόν, τι τραπέζι μιλάμε; Λογαριασμοί. Και στη συνέχεια σε αυτή την περίπτωση, τι είναι πραγματικά δροσερό Είναι μιλάμε για συγκεκριμένες χρήστες στο λογαριασμό μας, ή μιλάμε για όλους τους χρήστες; Μιλάμε για όλους τους χρήστες. Έτσι, στην περίπτωση αυτή, μπορούμε απλά διαγραφή αυτή, όπου προκριματικό. Πού είναι μόνο όταν θέλετε να περιορίσει τι αλλάζει. Αν θέλετε να αλλάξετε το σύνολο τραπέζι, μπορείτε απλά να πέσει αυτό. ΟΚ. Έτσι, τώρα είμαστε στο μέρος SET μας. Τι θέλουμε να αλλάξουμε; Κοινό: Ισορροπία. ΟΜΙΛΗΤΗΣ 1: Ισορροπία. Και θα πάμε to-- πώς είναι θα πάμε να αλλάξουμε την ισορροπία; Έχουμε μια αμοιβή $ 20, σωστά; Μείον 20. Και είπαν ότι είναι εντάξει, αν έχουμε αρνητικά υπόλοιπα. Έτσι, σε αυτή την περίπτωση, δεν χρειάζεται να κάνει οποιαδήποτε περαιτέρω έλεγχο σφαλμάτων. Εντάξει; Αυτό είναι κυριολεκτικά το μόνο που έχετε να κάνετε. Cool; ΟΚ. Ας περάσουν από το επόμενο. "Με αυτό το ερώτημα SQL θα μπορούσε η Τράπεζα ανακτήσετε τους αριθμούς λογαριασμού από τους πλουσιότερους πελάτες της με εξισορροπεί μεγαλύτερη από $ 1.000; " Αν η τράπεζά σας και πλουσιότερες πελάτες σας είναι μόνο αυτά με πάνω από $ 1.000, Νιώθω σαν να είστε κάνει κάτι λάθος. Όπως, πώς μια τράπεζα να επιβιώσει σε αυτό; Όπως, ότι το ενδιαφέρον, όχι αρκετά αρκετά. ΟΚ. Με αυτό το είδος του πράγματος, τι κάνουμε νομίζετε, από τέσσερις λειτουργίες μας, νομίζετε ότι θα πάμε να χρησιμοποιήσετε; SELECT. Τέλεια. SELECT. ΟΚ. Έτσι είμαστε επιλέγοντας κάποια αναγνωριστικό από το τραπέζι. Και τότε πού κατάσταση. Έτσι όπως πάμε μέσα αυτά, είμαι απλώς πρόκειται για να σας δώσει μια γενική παιδιά επανεκπαίδευση σχετικά με την γενική μορφή του όλα αυτά. Έτσι είμαστε επιλέγοντας κάποιο είδος της [? πράγμα. ?] Στην περίπτωση αυτή, Αυτό πρόκειται να είναι συνήθως κάποια στήλη. Έτσι, στην περίπτωσή μας, έχουμε τον αριθμό, την ισορροπία. Σε περίπτωση που τα παιδιά σας », ίσως ήταν αναγνωριστικό, το όνομα, τον κωδικό πρόσβασης. Οποιαδήποτε από αυτές τις στήλες, που είναι συνήθως αυτό που είμαστε επιλογή. Έτσι, σε αυτή την περίπτωση εδώ, η οποία είδος της στήλης, τι αναγνωριστικό είμαστε το τράβηγμα από το τραπέζι μας; Τι μας ζητήσετε; Μας ζητά για τους αριθμούς μας, σωστά; Οι αριθμοί λογαριασμού. Έτσι θυμηθείτε, αλλά μόνο ο αριθμός σε αυτή την περίπτωση. Εάν εσείς είχατε ποτέ το λάθος, ότι φωτεινό πορτοκαλί κουτί θα καταλήξει. Και ήταν σαν, απρόσμενη σειρά σε, όπως, οτιδήποτε. Αυτό συμβαίνει γιατί καλέσατε τραπέζι σας λάθος, σωστά; Γι 'αυτό να είστε σίγουροι ότι είστε καλώντας τη στήλη σωστά. Έτσι, από το τραπέζι, το τραπέζι μας Είναι ονομάζεται λογαριασμούς. Και πάλι, βεβαιωθείτε ότι είστε παραπομπή τραπέζι σας σωστά. Και τότε τι κατάσταση μας εδώ; Τι ψάχνουμε; Θέλουμε πλούσιους ανθρώπους μας. Ναι. Έτσι εξισορροπούν μεγαλύτερη από 1.000. Εκεί θα πάτε. Αυτό είναι το ερώτημά σας. Δεν είναι και τόσο άσχημα, έτσι δεν είναι; ΟΚ. Έτσι τώρα για το τελευταίο μας. Με αυτό, είμαστε breezing μέσω. ΟΚ. Έτσι τώρα "με ποιο ερώτημα θα μπορούσε να η τράπεζα κοντά, δηλαδή, διαγραφή "- δεν σας αρέσει το πώς θα μόλις δώσατε DELETE-- "Κάθε λογαριασμό που έχει μια ισορροπία 0;" Νομίζω ότι μπορούμε να συμφωνήσουμε όλοι είμαστε κατά πάσα πιθανότητα πρόκειται να χρησιμοποιεί DELETE. Είμαι ευπρόσδεκτοι να λάβουν οποιαδήποτε συζήτηση γύρω από αυτό. Αλλά νομίζω ότι είναι αρκετά ασφαλές να λένε ότι θα μπορούσαμε να χρησιμοποιήσουμε DELETE. Έτσι θα πάμε να διαγράψετε μερικά χρήστες από τον πίνακα, ΟΠΟΥ κατάσταση. Έτσι, ίδιο είδος του πράγματος ως SELECT. Έτσι, σε αυτό case-- Ω, συγγνώμη. Θα πρέπει Διαγραφή από το. Επειδή το Delete διαγράψετε ολόκληρη τη σειρά. Γι 'αυτό και δεν χρειάζεται να μιλήσουμε για τις οποίες συγκεκριμένα πράγματα για κάποιον χρήστη είμαστε διαγραφή. Αν διαγράψετε ένα χρήστη, είμαστε διαγράφοντας τα πάντα γι 'αυτούς. Έτσι, σε αυτή την περίπτωση, το μόνο που χρειάζεται να συμπληρώστε το πού μας και την κατάσταση μας. Έτσι, το τραπέζι μας είναι απλά λογαριασμούς μας τραπέζι, όπως έχουμε κάνει. Και τότε τι είναι κατάσταση μας εδώ; Κοινό: Ισορροπία. ΟΜΙΛΗΤΗΣ 1: Ισορροπία ισούται με 0. Σωστό. Όλα καλά. Ναι. ΚΟΙΝΟ: [δεν ακούγεται]. ΟΜΙΛΗΤΗΣ 1: Έτσι ΔΙΑΓΡΑΦΗ εγγενώς διαγράφει τα πάντα. Έτσι, ενώ με την Επιλογή, επιλέξτε παίρνει σε ορισμένες στήλες που θέλετε να επιστραφούν. Αν ήθελε τα πάντα για ο χρήστης επιστρέψει, μπορείτε να χρησιμοποιήσετε αστέρων. Αστέρι λέει, επιστρέψτε σε μένα τα πάντα από αυτόν τον χρήστη. Ή αν βάλεις ΟΠΟΥ αστέρι, ότι σημαίνει απλά να μου δώσει τα πάντα. Αλλά DELETE εγγενώς έχει αυτό. Έτσι, αν σας πω, DELETE από λογαριασμούς όπου ισορροπία ισούται με 0, πρόκειται να περάσουν. Και παντού ότι η ισορροπία είναι ίσο με μηδέν, κάνει εγγενώς αυτό. Θα διαγράψει τα πάντα. Το αστέρι είναι πιο for-- με το πλήκτρο SELECT ή UPDATE, αυτό μιλάει περισσότερο για το άτομο πεδία αντιστοιχεί σε ένα χρήστη. Έτσι, όταν έχετε επιλέξει αστέρι από τον πίνακα όπου ID ισούται με 1, η οποία επιστρέφει σε σας τα πάντα για το χρήστη με ID 1. Εάν επρόκειτο να κάνετε επιλέξετε τον αριθμό ή επιλέξτε αναγνωριστικό όνομα κόμμα από τους χρήστες ΟΠΟΥ ταυτότητα ισούται με 1, ότι επιστρέφει μόνο τον αριθμό τους ή της αστυνομικής τους ταυτότητας και το όνομά τους. Εντάξει; Έτσι χρησιμοποιούμε αστέρι στην περίπτωση αυτή να να μας δώσει τα πάντα για ένα χρήστη. Και DELETE εγγενώς το κάνει αυτό. Αυτό δεν είναι μόνο να διαγράψετε το αναγνωριστικό, ή μόνο το όνομα, ή οτιδήποτε άλλο. Ναι, δεν υπάρχει. Καταργεί μόνο ολόκληρο τον χρήστη. Γι 'αυτό και δεν χρειάζεται να ανησυχείτε για το αστέρι εκεί. Αν θέλατε να διαγράψετε τα πάντα, θα μπορούσατε να το κάνετε αυτό, και αυτό θα πέσει απλά τα πάντα. Αλλά συνήθως, μπορείτε Δεν θέλω να το κάνω αυτό. Αλλά αν ποτέ θέλετε να διαγράψετε τα πάντα, θα μπορούσατε να το κάνετε αυτό. ΟΚ. Έχετε παιδιά βρέθηκαν και άλλες ερωτήσεις; Ναι. ΚΟΙΝΟ: Θα μπορούσατε να κάνετε 26; ΟΜΙΛΗΤΗΣ 1: 26 απλά κάναμε. ΚΟΙΝΟ: Ω, 25, συγγνώμη. ΟΜΙΛΗΤΗΣ 1: 25. ΟΚ. 25. Ω. Κάνουν το JavaScript. Αχ, δεν μπορώ να το πιστέψω. Πάω να το χάλι μας και πάλι, παιδιά. ΟΚ. Πήραμε αυτό. Εμείς πάμε για να κάνουν αυτό το έργο. Αχ, jQuery. Διασκέδαση. ΟΚ. Γι 'αυτό και πρόκειται να ολοκληρωθεί το την εφαρμογή της ιστοσελίδας κατά τέτοιο τρόπο ώστε αν επισκεφθούν, εισόδου το όνομά τους, και να υποβάλουν το έντυπο, έχουν αυτή τη μεγάλη εγρήγορση παράθυρο που πρόκειται να εμφανιστεί. Έτσι, οτιδήποτε με ειδοποιήσεις, γνωρίζουμε ότι θα πάμε να πρέπει να χρησιμοποιήσετε το JavaScript. Yay, το JavaScript. Και αν αποτύχετε να εισαγάγετε ένα το όνομα πριν από την υποβολή του εντύπου, θα πρέπει να εμφανίζεται καμία προειδοποίηση. Έτσι, μπορείτε να χρησιμοποιήσετε jQuery, αλλά δεν έχετε να. Έτσι, Πάω να σας αφήσει να δουλεύετε για το θέμα αυτό μόνο για λίγα λεπτά. Σκεφτείτε το. Και τότε εμείς θα Κώδικα. Slash Πάω να προσπαθήσουμε και να σκεφτείτε το καλύτερος τρόπος για να εξηγήσει αυτήν την απάντηση σας. Εντάξει. Θα πάρετε αυτό που έχει συσταθεί. ΟΚ. Έτσι, απλά θα να περπατήσει μέσα από αυτό, γιατί ξέρω jQuery είναι μια μικρή σύγχυση. JavaScript. Είναι λίγο έξω εκεί. Έτσι, αυτό που πάμε να κάνουμε είναι [Δεν ακούγεται] πράγματι λυθεί Αυτό το πρόβλημα με jQuery. Έτσι, αν θυμάστε, jQuery είναι απλώς μια βιβλιοθήκη αυτό είναι απλά χτισμένο στην κορυφή του το JavaScript. Είναι γραφτό να κάνουν σας τη ζωή λίγο πιο εύκολη. Θα ήθελα σίγουρα, αν έχετε χρόνο, να κοιτάξουν πέρα λίγο από το τεκμηρίωση για jQuery. Αλλά είναι πολύ παρόμοια με JavaScript. Είναι πήρε παρόμοια παραδείγματα, όπου μπορείτε χρησιμοποιήσετε αυτό το dot χειριστή να καλέσετε λειτουργίες σχετικά με τα αντικείμενα που έχετε. Έτσι, αυτό που έχουμε εδώ είναι για jQuery, θα πρέπει να έχετε πάντα αυτό το είδος του περιτυλίγματος, που είναι η $ (Έγγραφο) .ready (λειτουργία) λειτουργία σε παρενθέσεις εδώ. ΟΚ. Έτσι, αυτό μπορεί να είναι κάτι θέλετε στο φύλλο σας εξαπατήσουν. Επειδή τουλάχιστον, μπορείτε να έχουν το περιτύλιγμα για jQuery σας. Και αυτό θα πάρει τουλάχιστον θα χωρίσουν οι δρόμοι εκεί. Έτσι, με τον ίδιο τρόπο που Συζητήσαμε πολύ για JavaScript, και θα ξεκινήσει με την εξέταση σε ό, τι προσπαθούμε να επεξεργαστείτε ή ό, τι προσπαθούμε να αλλάξουμε. Και αυτό συμβαίνει συνήθως στην το πρώτο πράγμα που θα θέσει σε. Έτσι, σε αυτή την περίπτωση, αν πάμε πίσω σε αυτό εδώ και κοιτάμε τη φόρμα μας εδώ, Έχουμε αυτό εισόδους, δεξιά, αυτή η ταυτότητα των εισροών. Και γνωρίζουμε ότι με βάση σχετικά με την ερώτησή μας, είτε πρόκειται να ρίξει ένα σφάλμα αν αυτό είναι άδειο, ή θα πάμε να θέσει αυτό σε μια προειδοποίηση, σωστά; Έτσι, μάλλον ασφαλές να πούμε ότι είμαστε πρόκειται να ασχολείται με τις εισροές εδώ. jQuery είναι πολύ παρόμοια στο ότι αν εμείς σκεφτείτε πίσω στο CSS, τίποτα με ένα αναγνωριστικό κοιτάζουμε με ένα hash. Οτιδήποτε με τάξη μας κοίταξε με μια τελεία, σωστά; Έτσι, με τον ίδιο τρόπο εδώ, τι μιλάμε για είναι εισόδους. Είδαμε ότι οι είσοδοι είναι ένα αναγνωριστικό μέσα φόρμα μας. Έτσι θα πάμε να αναφέρονται σε αυτήν ως τέτοιες. Είσοδοι. Εντάξει; Έτσι, σε περίπτωση αμφιβολίας, ακόμη και αν έχετε πουθενά, αν είστε πραγματικά σίγουροι για το πώς να προσεγγίσουμε το θέμα, Α, έχουν αυτό το περιτύλιγμα. Έτσι ξεκινήσουμε από εκεί με το περιτύλιγμα για jQuery. Β, βεβαιωθείτε ότι γνωρίζετε τι θέλετε να αλλάξετε. Και σε περίπτωση αμφιβολίας, θέσουμε ότι σε κάτι, και κάνουν τελεία, ό, τι νομίζετε θα πρέπει να κάνει με αυτό. ΚΟΙΝΟ: Τι είναι το περιτύλιγμα; ΟΜΙΛΗΤΗΣ 1: Το περιτύλιγμα είναι αυτή η πρώτη γραμμή. Έτσι, αυτό λέει, περιμένετε έως ότου εγγράφου μου είναι έτοιμο. Στη συνέχεια, ξεκινήστε μπέρδεμα με τα πράγματα. Εντάξει; Έτσι ξέρουμε ότι βρωμίζει με τις εισροές. Έτσι είμαστε σαν, ΟΚ, είσοδοι είναι μορφή μας. Αυτό είναι το αναγνωριστικό μας. Έτσι, αυτό είναι ό, τι είμαστε πρόκειται να ψάχνει για. Και θέλουμε να δούμε τι θα συμβεί όταν υποβάλλεται το έντυπο αυτό, σωστά; Έτσι, όπως θα μπορούσαμε να σκεφτούμε, έχουμε κάποια .submit. Έτσι .submit ακριβώς λέει, εντάξει, αυτή η μορφή ότι έχουμε παραπέμψει με εισόδους κατακερματισμού, όταν αυτό είναι που υποβλήθηκαν, εκτελέσει κάτι άλλο. Έτσι θα πάμε να έχει κάποια λειτουργία. Ανακοίνωση έχουμε ανώνυμα λειτουργίες εδώ. Έχουμε μια ανώνυμη συνάρτηση εδώ. Ναι. ΚΟΙΝΟ: Θα πάντα να .submit, ή είναι απλά επειδή στο HTML, κάναμε το είδος κουμπί Υποβολή; ΟΜΙΛΗΤΗΣ 1: Θα πρέπει να .submit, επειδή είναι κάποια μορφή που υποβάλλουμε. Επειδή αυτό .submit δεν σημαίνει απαραίτητα αντιστοιχεί σε αυτό το κουμπί είναι σαν για να καλέσετε. Αλλά το γεγονός ότι είναι ένα σχηματίζουν ότι είμαστε υποβολή. ΟΚ. Έτσι παρατηρήσετε ανώνυμο λειτουργία εδώ ότι says-- ΚΟΙΝΟ: Εγώ δεν κάνω πραγματικά κατανοήσουν ανώνυμα λειτουργίες. ΟΜΙΛΗΤΗΣ 1: Έτσι ανώνυμο λειτουργίες, είναι ακριβώς λειτουργίες που δεν έχουν όνομα. Έτσι, αντί να έχουν κάποια κύρια λειτουργία ότι calls-- θα μπορούσαμε να πούμε, Εάν το έγγραφο έτοιμο, τότε θα λέγαμε εισόδους. Και τότε, όταν υποβάλλονται, call-- Όπως, εάν έτσι-και-έτσι που υποβλήθηκαν, είχαμε καλέσει κάποια άλλη λειτουργία. Μια ανώνυμη συνάρτηση απλά δεν έχει όνομα, και θα εκτελέσει μόνο μέσα σε αυτά τα είδη των πραγμάτων. Έτσι, σε αυτή την περίπτωση, τι λέει αυτό Δηλαδή, όταν το έγγραφο μας είναι έτοιμη, εκτελέσετε αυτή τη λειτουργία. Αυτή η λειτουργία αποτελείται πάντα μέσα εδώ. Και τότε το επόμενο στρώμα είναι, εντάξει, όταν υποβάλλεται εισόδους, να εκτελέσει αυτό. Είναι απλά ένας τρόπος δηλωτικός τι θα πρέπει να εκτελείται όταν. Είναι κυριολεκτικά ένα λειτουργία που δεν έχει ένα όνομα, έτσι τείνουν να να φωλιάζει μέσα στο άλλο, γιατί δεν μπορείς να τους αποκαλούν με το όνομα. Εντάξει; Κυριολεκτικά, μια ανώνυμη συνάρτηση είναι απλά μια συνάρτηση χωρίς όνομα. Έτσι μπράβο. Απλά ένας τρόπος για να ενσωματώσουν διαφορετικά πράγματα ότι θέλουμε να εκτελούνται σε συγκεκριμένες χρονικές στιγμές. ΚΟΙΝΟ: [δεν ακούγεται]. ΟΜΙΛΗΤΗΣ 1: Η διέξοδος; Πού; ΚΟΙΝΟ: Στο παρένθεση μετά τη λειτουργία; ΟΜΙΛΗΤΗΣ 1: Μετά λειτουργίες. Ποιο από τα δύο; ΚΟΙΝΟ: Και τα δύο. Αν βάλετε, όπως, εκδήλωση, ή αν βάλετε ένα επιχείρημα εκεί, θα ήταν λάθος; ΟΜΙΛΗΤΗΣ 1: Σε αυτή την περίπτωση, υποθέτω θα μπορούσατε να βάλετε ένα επιχείρημα εκεί. Αλλά επειδή δεν χρειαζόμαστε μια επιχείρημα, δεν πρέπει να υπάρχει. Όπως, είναι το σύνολο, όπως, θα πρέπει μόνο έχουν τα πράγματα που είναι απαραίτητα το είδος του πράγματος. Με τον ίδιο τρόπο που αν είχαμε κάποια λειτουργία που έχει int main void-- όπως, με int main κενό, θα θα μπορούσε να κάνει int arg V, οτιδήποτε. Αλλά αν δεν χρειάζεστε αυτά, μπορείτε Δεν πρέπει να τα έχουν εκεί. Το ίδιο πράγμα. Emma, ​​είχατε μια ερώτηση; ΟΚ. Cool. ΟΚ. Έτσι, αυτό που έχουμε μέχρι στιγμής είναι όταν μας εγγράφου έτοιμοι, να εκτελέσει αυτό. Τώρα ψάχνουμε σε όταν είναι υποβάλλεται. Μέχρι τώρα έχουμε πραγματικά είδος του κρέατος πράγμα μας. Πρέπει, λοιπόν, να πάρει την αξία που είχαν οι χρήστης υπέβαλε, είτε αυτό είναι ένα όνομα ή άδειο. Και τότε θα πρέπει είτε επιστροφή Αυτή η προειδοποίηση ή να ρίξει ένα σφάλμα. Είτε έτσι είτε αλλιώς. Επομένως, πώς θα κηρύξει ένα μεταβλητή σε JavaScript; Var. Έτσι, ας πούμε, το όνομα var equals-- ή πραγματικά, θα κάνω αξία επειδή πιστεύω ότι το όνομά του. ΟΚ. Έτσι έχουμε κάποια αξία εδώ ότι εμείς θέλουν να τραβήξει από τη μορφή εισροών μας. Έτσι, κατά τον ίδιο τρόπο που εμείς το είδος έκανε εισροών, μπορεί κάποιος να μου πει τι εμείς θα μπορούσε να κλήσεις εντός εδώ αν θέλαμε να πάρετε το όνομα από τη μορφή; Και αν κοιτάξουμε πίσω στη φόρμα μας εδώ, παρατηρούμε ότι έχουμε ένα αναγνωριστικό του όνομα. ΚΟΙΝΟ: [δεν ακούγεται]. ΟΜΙΛΗΤΗΣ 1: Δεν έχετε να σκεφτείτε από το ως μια σειρά. Δεν χρειάζεται να ανησυχείτε για αυτό. Γι 'αυτό ακριβώς το όνομα. Και στη συνέχεια, επειδή το JavaScript και τα πράγματα είναι παράξενο, δεν μπορούμε απλώς να κάνει "όνομα". Στην πραγματικότητα πρέπει να καλέσετε κάποια συνάρτηση που μας δίνει, όπως, η αξία της εν λόγω αναγνωριστικό. Εντάξει; Έτσι ώστε να είναι ακριβώς .val. ΚΟΙΝΟ: [δεν ακούγεται]. ΟΜΙΛΗΤΗΣ 1: Εντάξει. Έτσι, με το JavaScript, αυτό το είδος του πράγμα εδώ πηγαίνει μόνο μέσα. Και θα μπορούσατε να σκεφτείτε αυτό as-- είναι όπως και σχεδόν ένα getElementById, όπου getElementById πραγματικότητα θα επιστρέψει το πλήρες πράγμα για σας. Το $ ("# όνομα») είναι ακριβώς όπως, Εντάξει, έχω, μπορώ να έχουν πρόσβαση, αλλά αν πραγματικά το θέλετε να επιστρέψει την τιμή να you-- ΚΟΙΝΟ: Είναι σαν ένα δείκτη; ΟΜΙΛΗΤΗΣ 1: Είναι κάτι σαν ένα δείκτη. Θα μπορούσατε να σκεφτείτε από το ως σαν ένα είδος δείκτη. Όπως, λέει, εντάξει, εγώ ξέρετε πώς να πάτε εκεί, αλλά για να πάρει πραγματικά την αξία από αυτό, θα πρέπει να ζητήσετε εκπεφρασμένα. Και δυστυχώς, προφανώς, δεν το κάνουμε κάνει πάρα πολύ με JavaScript και jQuery. Έτσι πρόκειται να έρθει κάτω σε πόσο Σας guys-- ό, τι τυχαίνει να γνωρίζω, τι τυχαίνει να έχω δει, και τι μπορείτε να το είδος του λογικά μαντέψουμε. Επειδή ορισμένα από αυτά τα πράγματα, θα μπορούσε πιθανότατα να πάρει στα μισά του δρόμου εκεί. Αλλά για να πάρει το απόλυτο δίκιο, Νομίζω ότι αυτό το πρόβλημα πιθανώς είχε ένα από τα χαμηλότερα σκορ. ΚΟΙΝΟ: Όπως, για παράδειγμα, για [δεν ακούγεται] εισροές, γιατί δεν έχετε να βάλετε Val εκεί; ΟΜΙΛΗΤΗΣ 1: Για αυτό; Κοινό: Ναι. ΟΜΙΛΗΤΗΣ 1: Ναι. Επειδή αυτό είναι το είδος του αρέσει, όπως είπαμε, κάποια δείκτη, και αυτό είναι μου αναφορά αυτό και πραγματικά να πάρει την αξία μας. ΚΟΙΝΟ: ότι, [δεν ακούγεται]; ΟΜΙΛΗΤΗΣ 1: Για τις εισροές, είσοδοι είναι απλά some-- Είναι σαν να είμαστε μόνο κοιτάζοντας στο σύνολό της, και αυτό λέει .submit μας τι πρέπει να γνωρίζουμε. jQuery και JavaScript είναι παράξενο. Το ξέρω. Το ξέρω, ρε παιδιά. Το ξέρω. Υπάρχει ένας λόγος που δεν κάνω κάνει web προγραμματισμό. Αστειεύομαι. Δεν είχα αρκετή έκθεση σε αυτό. ΚΟΙΝΟ: [δεν ακούγεται] CSS. [Γέλια] ΟΜΙΛΗΤΗΣ 1: Εντάξει, αυτό είναι το CSS. CSS είναι απλά, όπως, κάνει τα πράγματα αρκετά, δεν είναι όπως ας ασχοληθεί με τα δεδομένα. Υπάρχει μια διαφορά εκεί. ΟΚ. Μέχρι τώρα ελπίζουμε, αυτό part-- επίσης, για ένα πρόβλημα όπως αυτό, όπου δεν μπορεί να γνωρίζουν τη σύνταξη, θα μπορούσε να είναι όπως, Εντάξει, θα μπορούσε να έχει κάποια αξία var και να είναι όπως, υποθέτουν ότι πήρε την τιμή σωστά. Και τότε θα μπορούσε πιθανώς γράψω αυτό το επόμενο μέρος. Αυτό το επόμενο μέρος θα είναι πιθανώς φαίνεται πολύ πιο εύκολο, ή θα κάνει λογικό νόημα για σας παιδιά. Ενώ αυτό που έχουμε γράψει μέχρι τώρα, Ξέρω ότι θα ήταν όπως, χμμμ, ναι, Δεν ξέρω ότι στο κουίζ. Μπορείτε να γράψετε εντελώς psuedocode και στη συνέχεια να σπάσει σε πραγματικό κώδικα όταν you-- είναι κάτι σαν τα μαθηματικά. Εάν είχατε ποτέ κάποια πρόβλημα πολλαπλών μέρος όπου δεν ξέρετε πώς να περάσει το πρώτο βήμα, αλλά ό, τι άλλο βασίζεται σε αυτό το πρώτο βήμα, μπορείτε απλώς να πω, όπως, ας υποθέσουμε χ ισούται με 4. Και τότε θα τρέξει με αυτό, έτσι δεν είναι; Μπορείτε να κάνετε το ίδιο πράγμα με κωδικό. Έτσι, θα μπορούσαμε να πούμε, ας υποθέσουμε Πήρα τη σωστή αξία. Στη συνέχεια, κάνει αυτό το επόμενο μέρος εδώ. Επειδή αυτό το μέρος πραγματικά θα πρέπει να είναι αρκετά λογικό. Γι 'αυτό και πρέπει να ελέγξετε αν η αξία μας είναι άδειο. Ή αν είναι κάποιο όνομα, δίνουν πραγματικά μια ειδοποίηση. Λοιπόν, τι θα μπορούσαμε να θέλετε να ελέγξετε; Θέλουμε να έχουμε κάποια περίπτωση. Τι νομίζεις ότι αν μας πρόκειται να είναι; Θα πρέπει να ελέγξετε για να δείτε αν η αξία is-- αν δεν είναι ένα κενό string. Τέλεια. Ακριβώς. ΟΚ. Έτσι, αν αυτή είναι η περίπτωση, Τι θέλουμε να κάνουμε; Θέλουμε να ρίξει κάποια ειδοποίηση, σωστά; Έτσι είναι απλά εγρήγορση. Και στη συνέχεια, ό, τι θέλουμε μέσα. Έτσι, αυτό που υποτίθεται ότι πρέπει να έχουμε μέσα μας σε εγρήγορση; ΚΟΙΝΟ: "Γεια σας". ΟΜΙΛΗΤΗΣ 1: κόμμα. Και τότε θα κάνουμε παιδιά θυμάστε πώς να ενώσετε; ΚΟΙΝΟ: Plus. ΟΜΙΛΗΤΗΣ 1: Plus. Έτσι θέλουμε να έχουμε συν. Και τότε χρειαζόμαστε άλλο ένα συν για θαυμαστικό μας. Cool. ΟΚ. Διαφορετικά, τι θα μπορούσε να θέλουμε να κάνουμε; Δεν θέλουμε να κάνουμε τίποτα, σωστά; Γι 'αυτό ακριβώς επιστρέφει false. Δεν είναι αυτό που θέλω να κάνω. ΟΚ. Και τότε αυτά, από course-- τι είναι σημαντικό είναι να θυμηθείτε να κλείσετε ανώνυμα λειτουργίες σας. Έτσι, αν παρατηρήσετε, έχουμε κάποια λειτουργία εδώ που τελειώνει εδώ. Γι 'αυτό πρέπει να κλείσει αυτό πρώτο και προσθέστε ένα ερωτηματικό. Και στη συνέχεια αυτό εδώ πρέπει να κάνει με αυτήν την ανώνυμη λειτουργία, έτσι ώστε να το κλείσετε εκεί. Αυτή η σπασμωδική αντίδραση της εξοικονόμησης. Ναι. ΚΟΙΝΟ: Υπάρχει κάποιος λόγος υπάρχει that-- μόνο σε όλα τα παραδείγματα σε JavaScript ότι έχω δει, έχουμε οι πρώτες άγκιστρα στην ίδια γραμμή με τη λειτουργία; ΟΜΙΛΗΤΗΣ 1: Αυτό είναι υφολογική. Ναι. Και πράγματι, αν πάρετε 61, εμείς κάνουμε ό, άγκιστρα μας με αυτόν τον τρόπο. Εεε; ΚΟΙΝΟ: Αν κάναμε το κάνουμε αυτό σε η PSET, είναι τόσο κακό για το στυλ; ΟΜΙΛΗΤΗΣ 1: Όχι. Έχουμε πει ρητά εσείς να το κάνετε αυτό. Αλλά στην πραγματικότητα, αυτό είναι το είδος του δεσπόζει σύμβαση σε μια παρτίδα των κατηγοριών Γ και JavaScript και jQuery. Έτσι, προφανώς, είμαι sure-- και στην πραγματικότητα, αν μου είχαν να κάνουν αυτό το πρόβλημα εντελώς τυφλά, χωρίς να έχει κοίταξε, υπάρχει πιθανότατα πολύ λίγοι τρόπους θα είχα πάρει αυτό. Θα μπορούσε να ήταν σαν, εντάξει, ίσως εγώ πρέπει να αρπάξει κάτι που είναι μια είσοδος. Και νομίζω ότι έχουν το γνώση ότι, όπως, Εντάξει, αν θέλω να πάρω κάτι από μια μορφή που έχει ένα αναγνωριστικό, Αναφέρομαι σε αυτό με τον τρόπο αυτό, Θα πάρετε πιθανώς αυτό. Θα μπορούσε να πάρει αυτό. Αλλά πραγματικά, το μόνο πράγμα που νομίζω Θα ήθελα πραγματικά να είναι αυτό ακριβώς εδώ. Έτσι είναι το είδος του σημαντικό να γνωρίζουν, όπως συμβαίνει με κάθε δύσκολη δοκιμασία, μπορείτε να επιλέξετε το είδος των μαχών σας, σωστά; Αν ξέρετε ότι δεν πρόκειται να πάρει που στο πρώτο μέρος για jQuery, όπως είπα, ας υποθέσουμε ότι έχετε αυτήν την τιμή και να κάνουμε ό, τι μπορούμε με αυτό. Και αν έχετε χρόνο, πηγαίνετε πίσω και να προσπαθήσουμε και να συμπληρώσετε τα κομμάτια. Αλλά μην αφήσετε μια ερώτηση, όπως αυτό που κολλάει πραγματικά. Γιατί αυτό; Αυτή ήταν μια ερώτηση σχετικά με jQuery από το σύνολο των εξετάσεων. Οπότε ναι, θα ήθελα να είναι μεγάλη, αν το πήρατε. ΚΟΙΝΟ: [δεν ακούγεται] σας είναι ευπρόσδεκτοι να χρησιμοποιήσουν jQuery. ΟΜΙΛΗΤΗΣ 1: Είστε ευπρόσδεκτοι να χρησιμοποιήσετε jQuery. ΚΟΙΝΟ: Εντάξει. [Δεν ακούγεται]. ΟΜΙΛΗΤΗΣ 1: Πώς θα δεν το χρησιμοποιείτε; Θα πρέπει να εξετάσουμε όλες JavaScript μου. Είναι πραγματικά πολύ πιο εύκολο, Νομίζω ότι, για να χρησιμοποιήσετε jQuery, γιατί jQuery στην πραγματικότητα μειώνει το ποσότητα JavaScript γράψετε πιθανώς με, όπως, ένα δεύτερο. Έτσι, ο δικός μας κώδικας θα μπορούσε πιθανότατα να είναι διπλάσιο χρόνο χωρίς αυτό. Έτσι, αν recognize-- το μεγαλύτερο πράγμα που πρέπει να πάρει μακριά από αυτό το πρόβλημα είναι τα μοτίβα. Αν έχετε πρόσβαση κάτι από ένα έντυπο, θα πάμε να χρησιμοποιήσετε εισαγωγικά, χασίς, ό, τι προσπαθείτε να αποκτήσετε πρόσβαση. Αν είναι να υποβληθεί, θέλετε να χρησιμοποιήσετε κάτι σαν .submit. Είστε πιθανώς πρόκειται να χρησιμοποιήσετε μια ανώνυμη συνάρτηση εκεί. Εάν χρειάζεστε πραγματικά την αξία του κάτι, θα πάμε να κάνουμε εισαγωγικά, χασίς, όποια και αν είναι το πεδίο, .val. Και η αναγνώριση προτύπων όπως ότι πρόκειται να είναι πολύ πιο χρήσιμες από πραγματικά γνωρίζοντας την κονιδιασμένος λιθίαση. Ναι. ΚΟΙΝΟ: Έτσι, αν η χρήστης υποβάλλει το όνομά τους και περνά μέσα από αυτή τη δήλωση, θα να πάει κάτω και να επιστρέφει false μετά από αυτό; ΟΜΙΛΗΤΗΣ 1: Όχι, επειδή η ειδοποίηση, μπορείτε να σκεφτείτε το σαν μια επιστροφή. Ναι. Έτσι θα βγείτε. Ναι. ΚΟΙΝΟ: Θα μπορούσατε να [? τοποθετήστε?] τις παρενθέσεις του υποβάλλει, παρενθέσεις, κάτι; ΟΜΙΛΗΤΗΣ 1: έκανα, πιστεύω. Αυτό και μόνο είναι κλειστό εδώ. Και τότε αυτό παίρνει κλείσει εδώ. ΚΟΙΝΟ: Ω, εκεί. Εντάξει. ΟΜΙΛΗΤΗΣ 1: Προφανώς, λίγο, λίγο συντακτική πράγματα όπως και ότι, πιθανότατα θα απλά κύκλο αυτό και να είναι όπως, ας μην ξεχνάμε παρενθέσεις σας. Αλλά ναι. ΟΚ. Έχουμε ένα άλλο ότι θα θέλαμε να το κάνουμε; Μήπως εσείς να πάρετε το δυαδικό δένδρο ένα; Θέλουμε να πάει πάνω από το ένα; Νιώθω σαν δυαδικά δέντρα και DOM, θα πρέπει να είναι τα σημεία ότι εσείς έχετε αρκετά εύκολα. Δεν θα θέλετε να χάσετε πόντους σε αυτό. ΟΚ. Ας κάνουμε αυτό το DOM εδώ. Μακάρι να είχα Επιφάνεια μου έτσι θα μπορούσε απλά να σχεδιάσετε πάνω στην οθόνη. Αυτό είναι αυτό που χρησιμοποιείται για να κάνει πέρυσι. ΟΚ. Έτσι, όπως ανέφερα, μιλήσαμε για το DOM, Document Object Model. Θα πρόκειται πιθανώς να σας δώσει μερικά λίγο απόσπασμα, όπως αυτό και να σας ζητήσει να δημιουργήσετε ένα δέντρο για αυτό. Και αυτό ακριβώς έχει να κάνει με τη λειτουργία μέσω των ετικετών. Οπότε ας προσπαθήσουμε και να κάνουμε αυτό. Επίσης, ως συνήθως, αν εσείς κάνουν αυτά τα κουίζ, όπως πολύ συνιστούμε να το κάνετε ως πρακτική, οποιοδήποτε από αυτά ότι είστε όπως, Πραγματικά δεν παίρνουν τι είναι συμβαίνει εδώ, απλά, φυσικά, στείλτε μου ένα email με μια ερώτηση, και θα εξηγήσω όσο καλύτερα μπορώ. ΟΚ. Έχουμε κάποιο έγγραφο, και έχουμε HTML. ΟΚ. Έτσι, τότε είμαστε απλώς αναλύοντας οι ετικέτες εδώ, σωστά; Έτσι, αυτό που βλέπουμε comes-- τι είναι οι δύο διακρίσεις που εμπίπτουν στο HTML; Ειδικά επειδή από όπου και αν εσοχή σωστά; Κεφάλι και το σώμα. Αχ. Κεφάλι και το σώμα. Υπέροχο. Έτσι, τότε ας ξεκινήσει εδώ με το κεφάλι. Τι είναι κάτω από το κεφάλι; Ποια είναι η επόμενη ετικέτα μας; Τίτλος. Και στη συνέχεια, εντός του τίτλου, κουίζ. ΟΚ. Έτσι, κυριολεκτικά, είναι ακριβώς περπατώντας μέσα από τις ετικέτες, εντάξει; Έτσι, στη συνέχεια, αν έχουμε το σώμα, καθώς περνάμε, σώμα έχει τρία πράγματα μέσα σε αυτό, σωστά; Είναι πήρε τρεις divs. Κάθε div παίρνει το δικό του μικρό κουτί του. Και τι είναι το πρώτο div; [Δεν ακούγεται] Και στη συνέχεια το επόμενο είναι μέση, το οποίο είμαι απλώς πρόκειται να συντομεύσει. Και στη συνέχεια το τελευταίο είναι πυθμένα. Έτσι, πραγματικά, είναι απλά περπατώντας μέσα. Και επειδή εμείς πάμε να δώσουμε Σας HTML που είναι σωστά εσοχή, μπορείτε να κυριολεκτικά τρέχει μέσα και να είναι όπως, εντάξει, εδώ είναι η HTML. Έτσι, αυτό είναι το εξωτερικό γωνία, ή περισσότερο αριστερά, έτσι ώστε να πρέπει να είναι το πράγμα του. Αυτά είναι στην ίδια εσοχή. Γνωρίζουμε, λοιπόν, ότι το κεφάλι πρέπει να να είναι στο ίδιο επίπεδο με το σώμα, αλλά κάτω από HTML. Είναι αυτό που έχουμε εδώ. Κεφάλι και το σώμα είναι αδέλφια, αλλά είναι κάτω από HTML. Και τότε θα πήγαινε σε κάθε ένα από αυτά. Έτσι, το κεφάλι έχει τίτλο, η οποία έχει κουίζ, όπως βλέπουμε εδώ. Και τότε σε αυτή την περίπτωση, έχουμε σώμα, που έχει αυτές τις τρεις γραμμές. Έτσι, όλα αυτά είναι αδέλφια όλα κάτω από το σώμα. Εντάξει; Έτσι, ελπίζουμε ότι όταν βλέπετε κάτι σαν αυτό, είστε όπως, Ναι, έχω μόνο να σχεδιάσετε ένα δέντρο. Είναι gonna είναι μεγάλη. ΟΚ. Έτσι ήθελε να βεβαιωθεί εσείς ήξερε ότι. Γιατί λοιπόν να μην πάμε σε 32 με δυαδικό δέντρο μας; Επειδή μόλις καταλάβετε ένα δυαδικό δέντρο αναζήτησης, δεν είναι πραγματικά τόσο άσχημα. Έτσι Everett, μπορώ να έχω erase-- Δηλαδή, όλα αυτά είναι σε απευθείας σύνδεση, πάρα πολύ. Έτσι, εάν έχετε οποιεσδήποτε ερωτήσεις. Χάσατε ένα μικρό διάστημα εκεί, αλλά είναι εντάξει. Έτσι δέντρο δυαδική αναζήτηση είναι μόνο ένας τρόπος για να οργανώσετε τα δεδομένα όχι σε μια σειρά, όπου η ρίζα είναι πάντα μεγαλύτερη από το αριστερό παιδί και η ρίζα είναι πάντα μικρότερη από το δικαίωμα του παιδιού. ΟΚ. Έτσι, έχουμε αυτό το μεγάλο δέντρο αναζήτησης εδώ. Έχουμε αυτούς τους αριθμούς, 34, 59, 20, 106, 36, και 52. Και εμείς πρέπει να οργανώσουμε τους με τέτοιο τρόπο έτσι ώστε η ρίζα είναι μεγαλύτερο από ό, τι στην αριστερή πλευρά και είναι μικρότερη από το πάντα στη δεξιά πλευρά. Και συνήθως, ό, τι θέλουμε να κάνουμε είναι να προσπαθήσουμε και να βρει κάτι για το στη μέση. Με δυαδικά δέντρα αναζήτησης, μπορεί να έχετε να παίζουν λίγο με αυτό. Αλλά σε αυτή την περίπτωση, ας υποθέσουμε ότι γνωρίζουμε αυτό το πρώτο. Έτσι, 36 είναι η πρώτη μας εδώ. Τυπικά, θα ήθελα να προσπαθήσω και να επιλέξετε κάτι περίπου στη μέση που θα πιθανώς να δώσει τα καλύτερα αποτελέσματα. Έτσι τώρα ξέρουμε ότι τα πάντα σχετικά με Αυτή η πλευρά πρέπει να είναι μικρότερη από 36. Αλλά, επίσης, τι θα μπορούσατε να δείτε είναι ότι έχουμε δύο σημεία εδώ. Έτσι, αν γνωρίζουμε ότι χρειαζόμαστε δύο αριθμοί που είναι λιγότερο από τη ρίζα, τότε θα μπορούσε απλώς να τα προμηθευτείτε και επιλέξτε τον τρίτο αριθμό. ΟΚ. Γιατί λοιπόν να μην αρχίσουμε με αυτή την πλευρά; Έτσι, αν γνωρίζουμε ότι τα πάντα σχετικά με Αυτή η πλευρά πρέπει να είναι μικρότερη από 36-- αλλά αν κοιτάξουμε αυτό, γνωρίζουμε ότι ο αριθμός αυτός πρέπει να είναι μικρότερος από τον αριθμό αυτό, σωστά; Επειδή ο αριθμός αυτός εδώ είναι στη δεξιά πλευρά. Και να θυμάστε, ακριβώς όπως και στο μεγαλύτερο μας δέντρο, τα πάντα σχετικά με το δικαίωμα πρέπει να είναι μεγαλύτερο από τη ρίζα. Με αυτόν τον τρόπο, γνωρίζουμε ότι ό, τι είναι σε αυτό πρέπει να είναι μεγαλύτερο από ό, τι είναι εδώ. Εντάξει; Έτσι έχουμε δύο επιλογές για τις δύο αυτές φυσαλίδες. Έχουμε 32 και 34-- ή συγγνώμη. 20 και 34. Λοιπόν, πώς νομίζετε θα μπορούσε να θέσει σε αυτά; Αν αυτό πρέπει να είναι μεγαλύτερο από αυτό, αυτό σημαίνει ότι θέλουμε να έχουν 20 εδώ και 34 εδώ. ΟΚ. Έτσι, με τον ίδιο τρόπο, θα εξετάσουμε σε αυτό το είδος υπο δέντρου. Και λέμε, εντάξει, δεν έχουμε 36. Έχουμε 106, 52, και 59. Σωστά; Σε αυτή την περίπτωση εδώ, ξέρει ότι αυτός ανάγκες να έχουν ένα πράγμα που είναι μεγαλύτερη από ό, τι αυτό και ένα πράγμα που είναι λιγότερο από αυτό. Σωστά; Έτσι, αν τα βάλουμε αυτά σε τάξη, είναι απλά για την εξεύρεση ότι η μέση τιμή και πάλι. Έτσι μέση αξία μας είναι 59. Έτσι, τότε ας πούμε, εντάξει, τι είναι λιγότερο από 59; Λοιπόν, αυτό είναι 52. Και τι είναι μεγαλύτερο από 59; Λοιπόν, αυτό είναι 106. Εντάξει; Έτσι είναι μόνο ένα κομμάτι σαν ένα παζλ. Αυτό συνήθως βοηθάει, ειδικά σε μικρά δένδρα, όπως αυτό, αν απλά να το παραγγείλετε, αν ξέρω πόσοι βρίσκονται στην αριστερή και πόσα είναι επί το σωστά, ότι μπορείτε απλά σας επιτρέπουν να επιλέξετε τι θα πρέπει να είναι στη ρίζα σας. Και τότε μπορείτε να το είδος του έργο από εκεί. MM-HM. 33; Σίγουρα. ΟΚ. Έτσι θέλουμε να δημιουργήσουμε ένα κόμβο ή ένα δυαδικό δένδρο αναζήτησης. Και ας δούμε τι μπορεί να είναι σε αυτό. Και νομίζω ότι αυτό θα στην πραγματικότητα είναι η τελευταία μας πρόβλημα. Αχ. ΟΚ. ΟΚ. Αυτό είναι σαν ό, τι μπορούμε σκεφτείτε ως κόμβος, σωστά; Έχουμε κάποια αξία, και εμείς ξέρετε ότι είτε θα έχουν αφήσει και το δικαίωμα των παιδιών. Δυαδική αναζήτηση tree-- εν λόγω μέσο ότι έχει το πολύ δύο παιδιά. Εντάξει; Ας σκεφτούμε τον τρόπο με τον οποίο ορίζεται μια συνδεδεμένη λίστα, σωστά; Είχαμε κάποια int ότι αντιπροσώπευε την τιμή. Είχαμε κάποια δείκτης που εκπροσωπούνται τι επρόκειτο να το επόμενο. Δυαδικό δέντρο αναζήτησης είναι πολύ παρόμοια. Έχουμε ακόμα κάποια αξία, n, ότι έχουμε δώσει, σωστά; Και τότε εγώ επέστησε Αυτά τα πολύ ρητά με βέλη, επειδή είναι Δείκτες αποτελεσματικά. Εντάξει; Έτσι, n είναι συνήθως ό, τι; Είναι κάποια αξία. Τι μπορούμε συνήθως να ορίσει ως; Ένας int. Έτσι έχουμε κάποια int n, ή τιμή τύπου int, ή ό, τι θέλετε να το ονομάσετε. Και μετά έχουμε το αριστερό το παιδί και το δικαίωμα του παιδιού. Σωστά; Και ξέρουμε ότι αυτό που είναι point-- τι είναι αυτοί που δείχνουν να? Από όπου και αν δείχνουν προς άλλους κόμβους, έτσι δεν είναι; Λοιπόν, πώς θα δηλώνουμε έναν pointer κόμβο; ΚΟΙΝΟ: [δεν ακούγεται]. ΟΜΙΛΗΤΗΣ 1: MM-HM. Και θα πάμε να έχουν δύο από αυτά, έτσι δεν είναι; Και τότε μπορούμε κυριολεκτικά δεν έφυγε για το αριστερό παιδί και δεξιά για το σωστό παιδί. Actually-- συγνώμη. Γιατί χρειαζόμαστε struct. Έτσι struct είναι γιατί δεν έχουμε τελείωσε με την οποία μια ακόμη κόμβο. Έτσι, ο κόμβος είναι μέσα εδώ. Είναι κάτι σαν ένα Αναδρομικός ορισμός, σωστά; Έτσι, όταν είμαστε μέσα Ο ορισμός αυτός, εμείς δεν έχουν τελειώσει δηλώνοντας κόμβο, όπως τη δομή, έτσι πρέπει να κάνουμε struct κόμβος μόνο να πω, ναι, είμαστε στην πραγματικότητα αναφερόμαστε πίσω τον εαυτό μας, πληκτρολογήστε το πράγμα. Αυτό σαν μία φορά ότι είναι που δημιουργήθηκε, θα είναι μια χαρά. Έτσι, πόσο μεγάλο τύποι σκέφτεστε είναι αυτό; Ποιο είναι το μέγεθος της δομής αυτής; 12. Γιατί; Ακριβώς. Και στην πραγματικότητα, ένα από τα πρώτων ερωτημάτων ένα Κουίζ Ένα είναι σχετικά με τα μεγέθη, η οποία είναι ο λόγος που ζήτησα. Εντάξει. Θα τέλος, επειδή η DCE θα φωνάζω σε εμένα αν δεν το κάνουμε. Αλλά εάν εσείς έχετε οποιεσδήποτε ερωτήσεις, Φυσικά, το email μου, επιτρέψτε μου να ξέρω. Εσείς θα με το ροκ. Είμαι σούπερ ενθουσιασμένος. Εσείς θα γίνει ως της Τετάρτης, και στη συνέχεια, θα στρωθούμε στη δουλειά για την τελική σας έργα, και αυτό πρόκειται να είναι φοβερό. Θα είμαι εδώ την επόμενη εβδομάδα 4:00 - 4:30 αν εσείς θέλετε να έρθετε σηκώστε κουίζ σας. Αν θέλετε να με βρει κάποια άλλη στιγμή ή απλά να συντονίσουν μια διαφορετική χρονική στιγμή, διστάσετε να επιτρέψτε μου να ξέρω. Διαφορετικά, αυτό είναι το τελευταίο τμήμα μας. Γι 'αυτό ήταν μεγάλη για να δείτε εσείς. Παρακαλώ πάρτε περισσότερα καραμέλα. Και καλή τύχη σε ένα κουίζ σας.