1 00:00:00,000 --> 00:00:08,090 2 00:00:08,090 --> 00:00:09,810 >> JASON Hirschhorn: Chào tất cả mọi người, với tuần 10. 3 00:00:09,810 --> 00:00:15,130 Đây là một tuần thú vị vì ngày mai là 1 đố, mà chúng tôi sẽ nhận được 4 00:00:15,130 --> 00:00:16,400 để trong một giây. 5 00:00:16,400 --> 00:00:21,770 Hôm nay trong phần, chúng ta sẽ đi trên một số tài nguyên cho các bài kiểm tra, và 6 00:00:21,770 --> 00:00:24,890 sau đó tôi sẽ trả lời bất kỳ và tất cả câu hỏi các bạn có. 7 00:00:24,890 --> 00:00:27,880 Và cuối cùng chúng ta sẽ kết thúc với một số vấn đề thực tế. 8 00:00:27,880 --> 00:00:30,940 >> Chúng ta có thể dành toàn bộ phần trả lời câu hỏi. 9 00:00:30,940 --> 00:00:33,240 Chúng ta có thể dành toàn bộ phần đi qua các vấn đề thực tế. 10 00:00:33,240 --> 00:00:36,890 Chúng tôi sẽ chỉ mở rộng để lấp đầy không gian và thời gian chúng ta có. 11 00:00:36,890 --> 00:00:40,590 >> Vì vậy, tôi đưa danh sách này lên mỗi tuần, nhưng đó là đặc biệt quan trọng trong tuần này. 12 00:00:40,590 --> 00:00:44,980 Để nghiên cứu, nếu bạn có không bắt đầu đã có, oh boy. 13 00:00:44,980 --> 00:00:46,400 Nhưng hy vọng bạn đã bắt đầu rồi. 14 00:00:46,400 --> 00:00:50,710 Và bạn đang đi qua các vật liệu và các nguồn lực được liệt kê ở đây. 15 00:00:50,710 --> 00:00:54,300 Tôi rất muốn giới thiệu một số trong số này. 16 00:00:54,300 --> 00:00:58,780 >> Đặc biệt, bài giảng là vô cùng quan trọng và hữu ích. 17 00:00:58,780 --> 00:01:02,880 Các study.cs50.net cung cấp một mồi lớn trên rất nhiều 18 00:01:02,880 --> 00:01:04,250 các chủ đề chúng tôi được bảo hiểm. 19 00:01:04,250 --> 00:01:07,810 Nó cũng có một số lớn thực hành các vấn đề. 20 00:01:07,810 --> 00:01:11,260 Và sau đó, Google là rất tốt, quá. 21 00:01:11,260 --> 00:01:12,360 Tôi không biết những gì bạn muốn sử dụng nó cho. 22 00:01:12,360 --> 00:01:14,090 Nhưng sử dụng Google, là tốt. 23 00:01:14,090 --> 00:01:16,680 >> Tiếp cận với tôi nếu bạn có bất kỳ câu hỏi, ý kiến, hoặc quan tâm. 24 00:01:16,680 --> 00:01:19,420 Xem qua các phiên xét slide từ đêm qua. 25 00:01:19,420 --> 00:01:21,540 Hoặc, nếu bạn có một thời gian, xem video. 26 00:01:21,540 --> 00:01:24,930 Họ cung cấp rất nhiều hữu ích các tài liệu và thông tin. 27 00:01:24,930 --> 00:01:29,730 Và cố gắng che nếu không phải tất cả, rất nhiều các chủ đề chúng tôi đã được bảo hiểm và bạn 28 00:01:29,730 --> 00:01:32,610 có thể thấy trên các bài kiểm tra. 29 00:01:32,610 --> 00:01:35,590 >> Phát biểu của các bài kiểm tra, mà sẽ có vào ngày mai. 30 00:01:35,590 --> 00:01:37,260 Nó dài 75 phút. 31 00:01:37,260 --> 00:01:40,740 Nhiều người trong số bạn đang dùng nó ở 1 giờ, và một số bạn 32 00:01:40,740 --> 00:01:42,740 dùng nó lúc 5:30. 33 00:01:42,740 --> 00:01:45,300 Cho thời gian bạn đang dùng nó và vị trí bạn đang dùng nó, hãy chắc chắn 34 00:01:45,300 --> 00:01:49,400 bạn hãy kiểm tra các tài liệu trên trang chủ CS50.net. 35 00:01:49,400 --> 00:01:54,340 >> Hãy nhớ rằng bạn có thể nhận được một trong 8 1/2 11 tờ để đi với bạn. 36 00:01:54,340 --> 00:01:57,310 Thông thường, mọi người không sử dụng này tấm ở tất cả trong các bài kiểm tra. 37 00:01:57,310 --> 00:01:59,740 Nhưng thực sự, nó là một cực kỳ công cụ học tập hữu ích. 38 00:01:59,740 --> 00:02:04,370 Vì vậy, đặt lại với nhau tấm đó là những gì Tôi đã dành lẽ ba hoặc bốn giờ 39 00:02:04,370 --> 00:02:07,110 làm khi tôi đang học cho CS50, và đó là dễ dàng hữu ích nhất 40 00:02:07,110 --> 00:02:08,740 cách tôi có thể nghiên cứu cho các bài kiểm tra. 41 00:02:08,740 --> 00:02:10,949 Vì vậy, ngay cả khi bạn có một số khác của nhân dân nghiên cứu hướng dẫn để xem xét và 42 00:02:10,949 --> 00:02:14,740 sử dụng như tài liệu tham khảo, tôi khuyên làm hướng dẫn nghiên cứu của riêng bạn, đặt 43 00:02:14,740 --> 00:02:15,490 những thứ cùng nhau. 44 00:02:15,490 --> 00:02:17,335 Mà thực sự giúp bạn tìm hiểu tất cả các tài liệu. 45 00:02:17,335 --> 00:02:20,270 46 00:02:20,270 --> 00:02:24,810 >> Cuối cùng nhưng không kém trong phần này, sau khi các bài kiểm tra vào ngày mai có một 47 00:02:24,810 --> 00:02:25,940 nhiều bài giảng - 48 00:02:25,940 --> 00:02:26,960 thứ hai tới. 49 00:02:26,960 --> 00:02:30,430 Có một phần, chứ không phải tới Thứ ba trước khi Lễ Tạ Ơn, nhưng 50 00:02:30,430 --> 00:02:31,630 Thứ Ba sau đó. 51 00:02:31,630 --> 00:02:36,600 Chúng tôi sẽ gặp nhau trong một trận chung kết tạm biệt bên và cũng làm một số mát mẻ 52 00:02:36,600 --> 00:02:41,530 điều để các bạn vui mừng về tiếp tục nghiên cứu trong khoa học máy tính. 53 00:02:41,530 --> 00:02:45,040 >> Có một dự án nhiều hơn, thêm một công bằng, thêm một hackathon. 54 00:02:45,040 --> 00:02:47,900 Chúng tôi đang ở gần cuối CS50, đó là thú vị - 55 00:02:47,900 --> 00:02:50,950 nhưng cũng có thể, nếu bạn đang như tôi, một chút buồn. 56 00:02:50,950 --> 00:02:53,950 Trước khi tiếp tục, không ai có bất kỳ câu hỏi về những gì 57 00:02:53,950 --> 00:02:55,200 chúng tôi đã được bảo hiểm cho đến nay? 58 00:02:55,200 --> 00:03:02,760 59 00:03:02,760 --> 00:03:08,730 >> OK, cũng hãy đi qua một số câu hỏi mà bạn có cho các bài kiểm tra và các chủ đề 60 00:03:08,730 --> 00:03:09,960 chúng ta có thể trang trải. 61 00:03:09,960 --> 00:03:11,540 Vì vậy, đây là một danh sách mà tôi đặt lại với nhau. 62 00:03:11,540 --> 00:03:15,500 Nó không có nghĩa là đầy đủ, nhưng hy vọng sẽ chạy bộ nhớ của bạn nếu bạn 63 00:03:15,500 --> 00:03:20,310 có một số câu hỏi về bất kỳ của các chủ đề, hoặc nếu bạn có câu hỏi về 64 00:03:20,310 --> 00:03:23,260 vấn đề thực hành từ các câu đố trong những năm qua. 65 00:03:23,260 --> 00:03:27,470 >> Tôi đã có một vài câu hỏi mà là gửi qua email cho tôi, nhưng tôi muốn tổ chức off 66 00:03:27,470 --> 00:03:29,490 trên những trong một giây. 67 00:03:29,490 --> 00:03:34,570 Không ai có bất kỳ câu hỏi, vấn đề họ không hiểu, 68 00:03:34,570 --> 00:03:38,100 câu trả lời họ không hiểu để chúng ta bắt đầu? 69 00:03:38,100 --> 00:03:39,520 Avi. 70 00:03:39,520 --> 00:03:41,585 >> ĐỐI TƯỢNG: Bạn có thể chỉ cần đi qua DOM và Ajax thực sự nhanh chóng? 71 00:03:41,585 --> 00:03:46,540 Như, những gì chúng ta cần phải biết hoặc phải hiểu về họ? 72 00:03:46,540 --> 00:03:49,750 >> JASON Hirschhorn: Tôi sẽ trả lời nói chung câu hỏi này, những gì tôi 73 00:03:49,750 --> 00:03:52,100 cần biết về cho chủ đề x? 74 00:03:52,100 --> 00:03:55,280 Bởi vì tôi có một cảm giác của nhiều bạn sẽ hỏi tôi rằng, hoặc là 75 00:03:55,280 --> 00:03:56,570 tò mò về điều đó. 76 00:03:56,570 --> 00:04:02,920 Vì vậy, trong phạm vi mà chủ đề là được đề cập trong bài giảng, hoặc phần, hoặc trên 77 00:04:02,920 --> 00:04:06,460 study.cs50.net, một vấn đề thiết lập, bạn nên quen thuộc với nó. 78 00:04:06,460 --> 00:04:10,580 >> Vì vậy, bạn không cần phải biết tất cả các loại của thẻ đó là có sẵn trong HTML hoặc 79 00:04:10,580 --> 00:04:15,950 tất cả các loại thuộc tính hoặc tài sản bạn có thể cho một cái gì đó trong CSS. 80 00:04:15,950 --> 00:04:20,204 Nhưng nếu bạn nhìn thấy nó trong một ví dụ bài giảng, nếu bạn thấy nó trong một vấn đề 81 00:04:20,204 --> 00:04:23,290 thiết lập, bạn có thể nên quen thuộc với nó, đặc biệt là những điều bạn thấy 82 00:04:23,290 --> 00:04:24,260 trong bài giảng. 83 00:04:24,260 --> 00:04:28,510 Vì vậy, chúng tôi đã thảo luận về tài liệu đối tượng mô hình một chút trong 84 00:04:28,510 --> 00:04:30,530 phần, nhiều hơn như vậy trong bài giảng. 85 00:04:30,530 --> 00:04:32,990 Bạn nên quen thuộc với nhiều của nó. 86 00:04:32,990 --> 00:04:34,750 >> Và bạn nên làm quen với Ajax với cùng mức độ. 87 00:04:34,750 --> 00:04:38,105 Chúng tôi chưa bao giờ thấy cực kỳ tiên tiến hoặc ví dụ phức tạp của Ajax, vì vậy 88 00:04:38,105 --> 00:04:40,920 bạn sẽ không được yêu cầu làm một cái gì đó cực kỳ phức tạp. 89 00:04:40,920 --> 00:04:45,180 Nhưng bạn có thể được yêu cầu, làm thế nào tôi thực hiện cuộc gọi Ajax sử dụng jQuery? 90 00:04:45,180 --> 00:04:47,350 Đó là cái gì bạn đã nhìn thấy một số lần trước, cả trong 91 00:04:47,350 --> 00:04:51,370 xem xét phiên và trong bài giảng, và nó chỉ đường hai-ish mã. 92 00:04:51,370 --> 00:04:53,190 >> Vì vậy, đó là một cái gì đó bạn nên làm quen với. 93 00:04:53,190 --> 00:04:55,550 Nhưng một lần nữa, cho tất cả các chủ đề này, nếu bạn đã nhìn thấy nó 94 00:04:55,550 --> 00:04:59,220 trước đây, nó là trò chơi công bằng. 95 00:04:59,220 --> 00:05:01,540 Và chúng tôi có thể yêu cầu bạn - rõ ràng, chúng tôi sẽ hỏi bạn những điều bạn 96 00:05:01,540 --> 00:05:02,340 đã không nhìn thấy trước. 97 00:05:02,340 --> 00:05:04,240 Mã hóa một cái gì đó bạn có không thấy trước đây. 98 00:05:04,240 --> 00:05:06,570 Mà không phải là để nói rằng bạn có không thấy các công cụ để giải quyết 99 00:05:06,570 --> 00:05:08,120 rằng vấn đề trước. 100 00:05:08,120 --> 00:05:09,200 Bạn đã thấy những công cụ này. 101 00:05:09,200 --> 00:05:11,160 >> Ví dụ, trên quiz 1, nếu bạn cần phải mã strlen. 102 00:05:11,160 --> 00:05:12,790 Chúng tôi đã không được mã hóa trước khi strlen. 103 00:05:12,790 --> 00:05:14,980 Nhưng bạn biết làm thế nào để sử dụng một vòng lặp, bạn biết làm thế nào để sử dụng nếu điều kiện. 104 00:05:14,980 --> 00:05:18,570 Bạn biết làm thế nào để viết các biến trong C. Nó sẽ được điều tương tự ở đây. 105 00:05:18,570 --> 00:05:22,350 Bạn sẽ không được yêu cầu làm bất cứ điều gì bạn không nhìn thấy trước, nhưng 106 00:05:22,350 --> 00:05:25,150 bạn có thể được yêu cầu, như, đặt một cái gì đó với nhau một cách mới lạ, hoặc 107 00:05:25,150 --> 00:05:27,650 giải quyết một loại khác nhau của vấn đề. 108 00:05:27,650 --> 00:05:30,830 >> Xin lỗi, đó không phải là cụ thể của bạn câu hỏi, nhưng tôi không thể trả lời về 109 00:05:30,830 --> 00:05:34,390 mỗi chủ đề duy nhất những gì bạn làm hoặc không cần biết. 110 00:05:34,390 --> 00:05:36,830 Nhưng cũng có thể, xin lỗi, điều cuối cùng về điều đó. 111 00:05:36,830 --> 00:05:42,900 Chúng tôi đã dành nhiều thời gian hơn đáng kể trên danh sách liên kết hơn, chúng tôi có trên Ajax. 112 00:05:42,900 --> 00:05:46,160 Bạn không sử dụng Ajax trong một bộ vấn đề. 113 00:05:46,160 --> 00:05:48,510 Một trong những tính năng nổi đó vấn đề thiết lập đó là danh sách liên kết. 114 00:05:48,510 --> 00:05:50,370 Và chúng tôi đã dành rất nhiều thời gian trong bài giảng và phần sử dụng nó. 115 00:05:50,370 --> 00:05:57,080 >> Vì vậy, tỷ lệ cược là danh sách liên kết sẽ xuất hiện nhiều hơn thường xuyên trên các bài kiểm tra hơn sẽ Ajax. 116 00:05:57,080 --> 00:06:00,390 Hoặc những câu hỏi phải làm gì với liên kết danh sách sẽ có giá trị nhiều điểm hơn. 117 00:06:00,390 --> 00:06:03,520 Vì vậy, bạn chắc chắn có thể tập trung và hẹp vào việc gì mà có nhiều 118 00:06:03,520 --> 00:06:06,720 khả năng đi lên bởi vì chúng tôi có dành nhiều thời gian cho chúng. 119 00:06:06,720 --> 00:06:08,700 >> OK bất kỳ câu hỏi nào khác không? 120 00:06:08,700 --> 00:06:09,890 Yeah. 121 00:06:09,890 --> 00:06:13,660 >> ĐỐI TƯỢNG: Chúng ta có thể đi qua việc sử dụng các chức năng ẩn danh trong JavaScript? 122 00:06:13,660 --> 00:06:17,140 Tôi là một chút nhầm lẫn là về điều đó. 123 00:06:17,140 --> 00:06:20,180 >> JASON Hirschhorn: Vì vậy, trong JavaScript - 124 00:06:20,180 --> 00:06:24,400 Tôi đang cố gắng để suy nghĩ làm thế nào tôi có thể viết này - 125 00:06:24,400 --> 00:06:27,590 vì vậy hãy thực sự mở ra mã này. 126 00:06:27,590 --> 00:06:31,830 127 00:06:31,830 --> 00:06:36,030 Vì vậy, đây là mã mà chúng tôi đã làm tuần trước. 128 00:06:36,030 --> 00:06:41,400 Và bạn đã nhìn thấy điều này trước khi nếu bạn ở đây trong phần tuần trước. 129 00:06:41,400 --> 00:06:43,180 Hoặc bạn đã nhìn thấy một cái gì đó tương tự như trước đây. 130 00:06:43,180 --> 00:06:44,800 >> Nhưng bạn có thể nhìn vào dòng đầu tiên này. 131 00:06:44,800 --> 00:06:46,950 Đây là cách bạn bắt đầu - 132 00:06:46,950 --> 00:06:48,010 mọi người đang nhìn thấy điều này trước đây. 133 00:06:48,010 --> 00:06:51,930 Nếu bạn muốn đặt một số mã JavaScript, bạn đặt nó bên này, giả sử 134 00:06:51,930 --> 00:06:53,520 bạn đang sử dụng JQuery. 135 00:06:53,520 --> 00:06:56,940 Đây là câu nói, không làm bất cứ điều gì cho đến khi tải các tài liệu. 136 00:06:56,940 --> 00:06:59,940 >> Và sau đó, Curt, bạn sẽ thấy ngay tại đây chúng tôi đang làm một cái gì đó như thế này - 137 00:06:59,940 --> 00:07:02,560 chức năng mở dấu ngoặc, đóng cửa dấu ngoặc. 138 00:07:02,560 --> 00:07:05,250 Vì vậy, chúng tôi không cho điều này hoạt động một tên. 139 00:07:05,250 --> 00:07:09,160 Chúng tôi sẽ không để xác định chức năng này được cho là chạy và sau đó 140 00:07:09,160 --> 00:07:10,830 gọi nó là một loạt các lần. 141 00:07:10,830 --> 00:07:15,140 Chúng tôi chỉ nói rằng tài liệu này đã có một chức năng. 142 00:07:15,140 --> 00:07:16,690 Một vài điều cần làm. 143 00:07:16,690 --> 00:07:20,670 >> Và chúng tôi không muốn dành thời gian cho nó một tên hoặc lưu nó cho 144 00:07:20,670 --> 00:07:21,650 vĩnh viễn. 145 00:07:21,650 --> 00:07:24,150 Chúng tôi chỉ muốn chạy một số điều. 146 00:07:24,150 --> 00:07:27,500 Vì vậy, một chức năng sắp xếp vô danh của phục vụ mục đích đó. 147 00:07:27,500 --> 00:07:30,280 Khi bạn không sử dụng một cái gì đó hơn và hơn nữa, do đó bạn không cần 148 00:07:30,280 --> 00:07:32,420 để cung cấp cho nó một cái tên - bạn chỉ muốn sử dụng nó một lần - 149 00:07:32,420 --> 00:07:36,720 bạn sẽ chỉ nói chức năng, cho Ví dụ, trong trường hợp này, và bạn chỉ 150 00:07:36,720 --> 00:07:38,280 xác định một cái gì đó bạn có thể cho một cái tên. 151 00:07:38,280 --> 00:07:40,920 >> Như thế, chúng ta có thể kéo ra chức năng này và cung cấp cho nó một cái tên và sau đó gọi mà 152 00:07:40,920 --> 00:07:41,760 hoạt động ở đây. 153 00:07:41,760 --> 00:07:44,270 Nhưng chúng tôi không cần phải bởi vì chúng tôi không muốn lãng phí thời gian cho nó một cái tên hay 154 00:07:44,270 --> 00:07:46,240 lãng phí một cái gì đó trong không gian tên của chúng tôi. 155 00:07:46,240 --> 00:07:47,530 Và bạn sẽ thấy rằng rất nhiều. 156 00:07:47,530 --> 00:07:52,810 Ví dụ, chúng ta thấy rằng rất nhiều trong này mã, nhưng bạn đã nhìn thấy điều này trước khi 157 00:07:52,810 --> 00:07:54,010 bạn bấm vào một cái gì đó - 158 00:07:54,010 --> 00:07:55,980 chạy loại mã. 159 00:07:55,980 --> 00:07:59,850 >> Chúng ta có thể xác định các mã mà chúng tôi muốn để chạy khi chúng ta nhấp chuột, trong trường hợp này, 160 00:07:59,850 --> 00:08:03,450 ID này, như một chức năng riêng biệt và sau đó chạy chức năng đó. 161 00:08:03,450 --> 00:08:07,940 Nhưng trong trường hợp này, chúng tôi chỉ bỏ qua rằng bước và di chuyển nó vào đây và 162 00:08:07,940 --> 00:08:10,340 chỉ để xác định tất cả mọi thứ mà chúng ta muốn xảy ra và 163 00:08:10,340 --> 00:08:12,450 không cho nó một cái tên. 164 00:08:12,450 --> 00:08:15,550 Mà vẫn có thể không có đã trả lời câu hỏi của bạn. 165 00:08:15,550 --> 00:08:15,960 >> ĐỐI TƯỢNG: Không, nó không. 166 00:08:15,960 --> 00:08:18,290 Ý tôi là, tôi đoán tôi chỉ không thực sự được lý do tại sao nó sẽ là một 167 00:08:18,290 --> 00:08:20,800 hoạt động ở tất cả, mặc dù. 168 00:08:20,800 --> 00:08:21,590 Bởi vì nó không thực sự được gọi. 169 00:08:21,590 --> 00:08:23,170 Nó không thực sự có một cái tên. 170 00:08:23,170 --> 00:08:25,510 >> JASON Hirschhorn: Đó là một chức năng trong cảm giác rằng đó là một loạt các bước, 171 00:08:25,510 --> 00:08:28,460 như bạn sẽ đặt vào một chức năng. 172 00:08:28,460 --> 00:08:29,970 Và sau đó là lý do tại sao chúng ta gọi nó chức năng ẩn danh. 173 00:08:29,970 --> 00:08:30,815 Chúng tôi sẽ không để cho nó một cái tên. 174 00:08:30,815 --> 00:08:33,159 Chúng tôi sẽ không cố gắng để lãng phí đặt tên cho nó, nhưng chúng tôi có thể. 175 00:08:33,159 --> 00:08:34,890 >> Chức năng ẩn danh, bạn luôn luôn có thể cung cấp cho một cái tên. 176 00:08:34,890 --> 00:08:37,620 Vì vậy, ví dụ, mã này ngay tại đây, chúng ta có thể đặt mã này trong một 177 00:08:37,620 --> 00:08:39,929 chức năng và sau đó gọi chức năng này ở đây. 178 00:08:39,929 --> 00:08:41,600 Thay vào đó, chúng ta nói, chúng tôi sẽ không bận tâm với điều đó. 179 00:08:41,600 --> 00:08:44,390 Chúng tôi chỉ sẽ viết tất cả ở đây. 180 00:08:44,390 --> 00:08:49,840 >> Nó giống như đôi khi bạn đang viết một vòng bốn trong C - các bạn 181 00:08:49,840 --> 00:08:51,630 đã thấy điều này trước đây - có thể bạn lặp lại thông qua một forloop 182 00:08:51,630 --> 00:08:53,090 vào tôi bằng 0. 183 00:08:53,090 --> 00:08:54,830 Tôi là ít hơn strlen. 184 00:08:54,830 --> 00:08:59,520 Hoặc bạn đang trải qua một số mảng, bạn có thể tiết kiệm mảng 185 00:08:59,520 --> 00:09:01,580 chỉ số i trong một số biến. 186 00:09:01,580 --> 00:09:02,830 Và bạn sử dụng biến đó. 187 00:09:02,830 --> 00:09:06,550 Vì vậy, bạn không cần phải viết lại mảng khung tôi hơn và hơn và hơn. 188 00:09:06,550 --> 00:09:08,160 >> Và đó là loại giống như một biến giả. 189 00:09:08,160 --> 00:09:10,790 Nó không phục vụ nhiều mục đích khác hơn để làm cho mã của bạn một chút sạch hơn 190 00:09:10,790 --> 00:09:12,120 và dễ đọc hơn. 191 00:09:12,120 --> 00:09:13,290 Chức năng tương tự ở đây. 192 00:09:13,290 --> 00:09:15,665 Chỉ làm cho nó một chút dễ dàng hơn, nhưng chức năng không có sự khác biệt. 193 00:09:15,665 --> 00:09:18,620 194 00:09:18,620 --> 00:09:19,330 Điều đó trả lời câu hỏi của bạn? 195 00:09:19,330 --> 00:09:19,970 >> ĐỐI TƯỢNG: Có. 196 00:09:19,970 --> 00:09:20,720 >> JASON Hirschhorn: OK .. 197 00:09:20,720 --> 00:09:21,880 Mario? 198 00:09:21,880 --> 00:09:25,380 >> ĐỐI TƯỢNG: Hôm qua họ thường đặt chức năng ngoặc sự kiện. 199 00:09:25,380 --> 00:09:26,420 Điều đó có nghĩa là cái gì? 200 00:09:26,420 --> 00:09:30,500 Hoặc là nó cho những thứ như rằng họ sẽ làm 201 00:09:30,500 --> 00:09:35,100 document.ready chức năng sự kiện. 202 00:09:35,100 --> 00:09:37,130 >> JASON Hirschhorn: Chúng tôi đã nhìn thấy điều này, và một lần nữa, đây là những điều nhỏ hơn 203 00:09:37,130 --> 00:09:39,590 có lẽ tôi không muốn chi tiêu quá nhiều thời gian trên. 204 00:09:39,590 --> 00:09:43,200 Bởi vì đôi khi tôi không muốn mọi người bị lốm đốm đó chúng không 205 00:09:43,200 --> 00:09:44,220 nghe nói về những điều mà nhiều. 206 00:09:44,220 --> 00:09:46,200 Nhưng chúng tôi nói chuyện một chút về xử lý sự kiện. 207 00:09:46,200 --> 00:09:50,360 Vì vậy, một cái gì đó xảy ra, và sau đó chức năng này được thực thi. 208 00:09:50,360 --> 00:09:53,210 Và sau đó chúng tôi cũng muốn biết một số chi tiết về những gì 209 00:09:53,210 --> 00:09:54,450 đã xảy ra trong sự kiện này. 210 00:09:54,450 --> 00:09:55,730 >> Vì vậy, suy nghĩ lại về vấn đề thiết lập 4. 211 00:09:55,730 --> 00:09:58,390 Đó có thể là cách dễ nhất để hiểu rằng trong thoát ra khỏi. 212 00:09:58,390 --> 00:09:59,740 Có một số mã - 213 00:09:59,740 --> 00:10:01,980 như một sự kiện sẽ xảy ra, nhưng sự kiện có thể có nhiều nghĩa. 214 00:10:01,980 --> 00:10:06,240 Nếu có thể có nghĩa là con chuột được nhấp, nó có thể có nghĩa là bạn nhấn một phím mũi tên, và cộng 215 00:10:06,240 --> 00:10:07,190 vân vân, vân vân. 216 00:10:07,190 --> 00:10:09,800 >> Nhưng đó là tất cả được lưu trong chung này điều được gọi là sự kiện. 217 00:10:09,800 --> 00:10:12,340 Và sau đó chúng ta có thể nói, là sự kiện này điều này? 218 00:10:12,340 --> 00:10:13,640 Hoặc đây là sự kiện điều này? 219 00:10:13,640 --> 00:10:15,500 Hoặc, những loại đã xảy ra với sự kiện đó? 220 00:10:15,500 --> 00:10:18,660 Vì vậy, đó là lý do tại sao bạn tạo biến có để lưu thông tin thêm 221 00:10:18,660 --> 00:10:21,420 về chính xác những gì đã xảy ra mà bạn sẽ muốn 222 00:10:21,420 --> 00:10:24,840 sử dụng trong các chức năng. 223 00:10:24,840 --> 00:10:28,200 Nhưng một lần nữa, đó là lẽ một trong những những điều ít quan trọng được siêu 224 00:10:28,200 --> 00:10:29,450 quen thuộc. 225 00:10:29,450 --> 00:10:31,470 226 00:10:31,470 --> 00:10:36,110 >> OK, những câu hỏi khác có người có, hoặc ngại khối họ đã 227 00:10:36,110 --> 00:10:37,360 gặp phải trong khi xem xét? 228 00:10:37,360 --> 00:10:41,260 229 00:10:41,260 --> 00:10:42,510 Chúng tôi sẽ trở lại vào danh sách đó. 230 00:10:42,510 --> 00:10:52,550 231 00:10:52,550 --> 00:10:56,080 Những gì về các câu đố trong thực tế, nếu người đã có những người đã? 232 00:10:56,080 --> 00:10:59,110 Là những gì một số vấn đề vấp các bạn lên? 233 00:10:59,110 --> 00:11:08,970 234 00:11:08,970 --> 00:11:12,720 Tôi biết một thực tế là năm ngoái bài kiểm tra là thực sự khó khăn. 235 00:11:12,720 --> 00:11:15,670 >> ĐỐI TƯỢNG: Bạn có thể giải thích những gì một cuộc tấn công SQL injection là? 236 00:11:15,670 --> 00:11:18,970 >> JASON Hirschhorn: OK, tuyệt vời. 237 00:11:18,970 --> 00:11:20,440 Vì vậy, chúng ta đã nói về điều này một chút. 238 00:11:20,440 --> 00:11:22,050 Có một bài thuyết trình về an ninh. 239 00:11:22,050 --> 00:11:25,670 Và một lần nữa, như tôi đã đề cập trước đó, đây là một sang một bên. 240 00:11:25,670 --> 00:11:30,010 Nhưng bạn sẽ bị thất vọng trên các bài kiểm tra khi bạn đọc một số hai điểm nhỏ 241 00:11:30,010 --> 00:11:33,040 câu hỏi, và bạn giống như, khi đã bao giờ tôi biết rằng? 242 00:11:33,040 --> 00:11:35,560 >> Tất cả những điều đó trong những bài giảng mà bạn không nghĩ rằng bạn cần 243 00:11:35,560 --> 00:11:38,290 biết, hoặc bạn có thể che đậy bởi vì họ không có để làm với các 244 00:11:38,290 --> 00:11:41,860 vấn đề tập hợp, những người sẽ có khả năng đưa ra một lần nữa trên các bài kiểm tra. 245 00:11:41,860 --> 00:11:45,030 Vì vậy, mát mẻ, những điều thú vị mà bạn chỉ cần nghĩ David đã nói cho bạn 246 00:11:45,030 --> 00:11:49,070 thưởng thức, ông đã nói với bạn để bạn có thể thưởng thức và để làm cho bạn chỉ là siêu 247 00:11:49,070 --> 00:11:50,550 vui mừng về việc học tất cả mọi thứ có học 248 00:11:50,550 --> 00:11:51,670 về khoa học máy tính. 249 00:11:51,670 --> 00:11:53,680 Những điều này cũng đi lên trên câu đố. 250 00:11:53,680 --> 00:11:56,440 Vì vậy, ngay cả những điều nhỏ mà không liên quan trực tiếp đến vấn đề của bạn 251 00:11:56,440 --> 00:11:59,630 thiết lập, như các bạn đã quen thuộc với từ Bài kiểm tra 0, có lẽ sẽ đi lên. 252 00:11:59,630 --> 00:12:01,530 Và đây là một ví dụ điển hình một cái gì đó. 253 00:12:01,530 --> 00:12:10,140 >> Vì vậy, một cuộc tấn công SQL injection là khi bạn nhận được một số thông tin từ người sử dụng và 254 00:12:10,140 --> 00:12:15,090 bạn muốn chèn nó vào một bảng sử dụng chèn câu lệnh SQL, nhưng bạn 255 00:12:15,090 --> 00:12:17,680 không vệ sinh đầu vào trước thời hạn. 256 00:12:17,680 --> 00:12:21,560 Vì vậy, rõ ràng là chúng tôi đã nhìn thấy Câu lệnh SQL. 257 00:12:21,560 --> 00:12:22,810 Tôi sẽ chỉ mở ra - 258 00:12:22,810 --> 00:12:25,590 259 00:12:25,590 --> 00:12:26,840 chúng ta hãy đi - 260 00:12:26,840 --> 00:12:31,290 261 00:12:31,290 --> 00:12:31,960 chúng tôi sẽ đi đến việc xem xét - 262 00:12:31,960 --> 00:12:35,180 Tôi nghĩ rằng, những người được bảo hiểm không? 263 00:12:35,180 --> 00:12:36,350 Tôi nghĩ rằng Samala đã làm. 264 00:12:36,350 --> 00:12:39,292 Vì vậy chúng tôi có thể nhận được - 265 00:12:39,292 --> 00:12:41,270 >> ĐỐI TƯỢNG: Nơi mà bạn đã tìm thấy điều này? 266 00:12:41,270 --> 00:12:44,990 >> JASON Hirschhorn: Vì vậy, nếu bạn đi đến CS50.net, câu đố, và sau đó bạn có thể 267 00:12:44,990 --> 00:12:47,170 di chuyển trên và nhận được slide so với phiên xem xét. 268 00:12:47,170 --> 00:12:49,860 Nhưng bạn có thể thấy đây là một ví dụ điển hình của một cuộc tấn công SQL injection. 269 00:12:49,860 --> 00:12:53,690 Chúng tôi có một số thông tin từ người sử dụng và họ cung cấp cho chúng tôi một chuỗi, và sau đó chúng tôi 270 00:12:53,690 --> 00:12:55,780 muốn chèn chuỗi vào một cơ sở dữ liệu. 271 00:12:55,780 --> 00:12:59,780 Nói chung là chúng ta sẽ làm vệ sinh mà đầu vào, có nghĩa là có một số 272 00:12:59,780 --> 00:13:01,050 nhân vật rất nguy hiểm. 273 00:13:01,050 --> 00:13:04,000 >> Ví dụ, trong chuỗi SQL, các báo giá - 274 00:13:04,000 --> 00:13:05,000 dấu nháy đơn hoặc dấu ngoặc kép - 275 00:13:05,000 --> 00:13:05,620 có nghĩa là một cái gì đó. 276 00:13:05,620 --> 00:13:08,380 Họ có nghĩa là kết thúc chuỗi này ở đây. 277 00:13:08,380 --> 00:13:13,090 Và do đó, nếu người sử dụng cung cấp cho bạn một đơn hoặc một giá gấp đôi, họ có thể 278 00:13:13,090 --> 00:13:18,970 cố gắng để đi lên truy vấn SQL của bạn và chèn một số nội dung xấu vào nó. 279 00:13:18,970 --> 00:13:23,130 Và nếu họ làm điều đó, họ có thể đạt được kiểm soát của cơ sở dữ liệu của bạn hoặc làm một số 280 00:13:23,130 --> 00:13:24,760 những điều mà bạn không muốn họ làm. 281 00:13:24,760 --> 00:13:28,300 >> Vì vậy, đó là lý do tại sao bất cứ khi nào chúng tôi thực hiện SQL truy vấn, chúng tôi làm vệ sinh đầu vào trước khi 282 00:13:28,300 --> 00:13:31,090 đưa nó vào cơ sở dữ liệu, mà nghĩa là chúng ta thoát khỏi những ký tự. 283 00:13:31,090 --> 00:13:32,590 Chúng ta sẽ nói về điều đó trong một giây. 284 00:13:32,590 --> 00:13:35,820 Nhưng câu chuyện dài ngắn, một SQL injection tấn công là nếu bạn không làm điều đó - 285 00:13:35,820 --> 00:13:39,760 nếu bạn không chăm sóc đầu vào họ đã cho bạn trước khi đưa bạn 286 00:13:39,760 --> 00:13:46,830 cơ sở dữ liệu, họ có thể, như bạn thấy xuống ở đây, chạy một truy vấn, trên thực tế - 287 00:13:46,830 --> 00:13:52,470 họ đặt trong mã của họ xuống đây và dòng chọn này xuống đây sẽ lựa chọn 288 00:13:52,470 --> 00:13:56,360 tất cả mọi thứ từ bảng bất kể những gì các mật khẩu được đưa ra. 289 00:13:56,360 --> 00:13:58,960 Bởi vì bạn có hay 1 bằng 1. 290 00:13:58,960 --> 00:14:02,750 >> Vì vậy, nó là cơ bản, câu chuyện dài ngắn, một cách để tiếp nhận các cơ sở dữ liệu. 291 00:14:02,750 --> 00:14:07,570 Câu hỏi đặt ra, sau đó, cho các bạn, là nơi trong p bộ 7 anh làm vệ sinh tất cả 292 00:14:07,570 --> 00:14:10,010 các đầu vào cho các truy vấn SQL của bạn? 293 00:14:10,010 --> 00:14:11,230 Nơi đã bước điều đó xảy ra? 294 00:14:11,230 --> 00:14:14,150 Nơi nào bạn ngăn chặn SQL injection các cuộc tấn công xảy ra trong p thiết lập 7? 295 00:14:14,150 --> 00:14:20,100 296 00:14:20,100 --> 00:14:20,490 Yeah. 297 00:14:20,490 --> 00:14:21,870 >> ĐỐI TƯỢNG: Crypt? 298 00:14:21,870 --> 00:14:23,120 >> JASON Hirschhorn: Vì vậy, nó không được crypt. 299 00:14:23,120 --> 00:14:52,360 300 00:14:52,360 --> 00:14:55,380 Chúng tôi đã không làm cho bạn làm điều này cho điều này vấn đề cụ thể được thiết lập, nhưng nó xảy ra 301 00:14:55,380 --> 00:14:58,190 trong các chức năng truy vấn. 302 00:14:58,190 --> 00:15:00,930 Chúng tôi thực sự đã viết nó cho bạn, và chúng tôi đã chăm sóc của 303 00:15:00,930 --> 00:15:03,040 vệ sinh đầu vào cho bạn. 304 00:15:03,040 --> 00:15:07,790 Nhưng trong những năm qua, học sinh đã có gõ đầu vào của chính mình. 305 00:15:07,790 --> 00:15:10,020 Trong p bộ 7, rất nhiều bạn - 306 00:15:10,020 --> 00:15:11,270 hãy để tôi mở một tập tin khác. 307 00:15:11,270 --> 00:15:18,530 308 00:15:18,530 --> 00:15:22,590 >> Vì vậy, bạn sẽ nhận thấy ở đây rất nhiều người, trong vấn đề thiết lập 7, đã không gọi 309 00:15:22,590 --> 00:15:25,240 chức năng này trên dây. 310 00:15:25,240 --> 00:15:27,880 Chức năng này, htmlspecialchars, một lần nữa - 311 00:15:27,880 --> 00:15:31,410 chuỗi này có thể có một số điều trong HTML có nghĩa là cái gì khác. 312 00:15:31,410 --> 00:15:36,160 Như một cú đúp, một hình vuông, hoặc một góc khung có nghĩa là một cái gì đó trong HTML. 313 00:15:36,160 --> 00:15:38,980 >> Và do đó, nếu bạn in ra mà đến màn hình hoặc nếu bạn chỉ đi mà và 314 00:15:38,980 --> 00:15:42,260 in mà ra HTML của bạn, sức mạnh đó làm điều gì đó bạn không mong đợi. 315 00:15:42,260 --> 00:15:45,180 Vì vậy, htmlspecialchars đi qua tất cả những nhân vật có đặc biệt 316 00:15:45,180 --> 00:15:47,030 họp và thoát họ. 317 00:15:47,030 --> 00:15:51,450 Vì vậy, nó được in ra như các văn bản bạn muốn xem, chứ không phải là 318 00:15:51,450 --> 00:15:53,280 điều chỉnh các HTML của bạn. 319 00:15:53,280 --> 00:15:55,040 Chúng tôi gọi là chức năng mà trong tiêu đề. 320 00:15:55,040 --> 00:15:57,390 Và rất nhiều người quên gọi đó là chức năng trong 321 00:15:57,390 --> 00:15:58,700 code bạn đã viết. 322 00:15:58,700 --> 00:16:03,970 >> Vì vậy, ví dụ, nếu một tên chứng khoán đã có một khung góc trong đó và bạn quên 323 00:16:03,970 --> 00:16:06,675 để gọi chức năng này, góc độ đó khung có thể ném ra gì 324 00:16:06,675 --> 00:16:08,250 HTML của bạn như thế nào. 325 00:16:08,250 --> 00:16:11,810 Nhưng gọi chức năng này sẽ thoát mà để nó thực sự in ra như là một 326 00:16:11,810 --> 00:16:15,870 khung góc và không ném tắt mã HTML của bạn. 327 00:16:15,870 --> 00:16:18,760 >> Cùng một lý do chúng tôi đã nhìn thấy, đôi khi, chéo trước dấu ngoặc kép trong một 328 00:16:18,760 --> 00:16:22,310 dòng printf bởi vì chúng tôi không muốn dấu ngoặc kép xuống chuỗi. 329 00:16:22,310 --> 00:16:24,050 Chúng tôi muốn in chúng ra màn hình. 330 00:16:24,050 --> 00:16:26,920 Vì vậy, tất cả điều này là ý tưởng tương tự. 331 00:16:26,920 --> 00:16:28,260 Điều đó trả lời câu hỏi của bạn? 332 00:16:28,260 --> 00:16:31,529 333 00:16:31,529 --> 00:16:33,870 >> ĐỐI TƯỢNG: Loại. 334 00:16:33,870 --> 00:16:35,300 >> JASON Hirschhorn: Bạn có có theo dõi? 335 00:16:35,300 --> 00:16:43,252 >> ĐỐI TƯỢNG: Tôi đoán SQL injection tấn công đã làm với điều đó không? 336 00:16:43,252 --> 00:16:45,720 Tôi không hiểu làm thế nào hai là có liên quan. 337 00:16:45,720 --> 00:16:47,610 Tại sao bạn sẽ làm specialchars? 338 00:16:47,610 --> 00:16:51,200 >> JASON Hirschhorn: OK, do đó SQL cuộc tấn công tiêm là khi bạn tiêm 339 00:16:51,200 --> 00:16:59,180 một số dây độc vào ai đó chương trình, và họ chỉ cần mang nó và chạy 340 00:16:59,180 --> 00:17:01,230 các truy vấn SQL với một chuỗi bạn cho họ. 341 00:17:01,230 --> 00:17:04,220 Như bạn thấy ở đây, mà có thể là có vấn đề. 342 00:17:04,220 --> 00:17:07,480 Vì vậy, cách bạn ngăn ngừa chống lại đó là bạn có chuỗi của họ mà họ cung cấp cho 343 00:17:07,480 --> 00:17:09,220 bạn - vì vậy chuỗi này ngay tại đây - 344 00:17:09,220 --> 00:17:11,240 và bạn vệ sinh nó. 345 00:17:11,240 --> 00:17:14,305 Bạn thoát khỏi tất cả những điều mà là khả năng có vấn đề. 346 00:17:14,305 --> 00:17:18,626 Vì vậy, bạn không giải thích chúng như một cái gì đó đó có nghĩa là một cái gì đó. 347 00:17:18,626 --> 00:17:23,390 >> Và một ví dụ về điều đó với HTML là chức năng này. 348 00:17:23,390 --> 00:17:26,060 Vì vậy, đó là ý tưởng tương tự ở đây. 349 00:17:26,060 --> 00:17:27,579 Và tôi đã chỉ cho các bạn khác ví dụ khi bạn đã 350 00:17:27,579 --> 00:17:29,030 thấy ý tưởng này trước đây. 351 00:17:29,030 --> 00:17:33,913 Thoát người dùng nhập vào trước khi in nó ra một màn hình hoặc đặt nó 352 00:17:33,913 --> 00:17:36,782 bên trong một câu lệnh SQL. 353 00:17:36,782 --> 00:17:40,790 >> ĐỐI TƯỢNG: Vì vậy, trong trường hợp này, người sử dụng là rối tung với các lập trình viên. 354 00:17:40,790 --> 00:17:41,240 >> JASON Hirschhorn: Có. 355 00:17:41,240 --> 00:17:44,800 Với tất cả các cuộc tấn công an ninh, đó là luôn luôn thường người sử dụng, hoặc 356 00:17:44,800 --> 00:17:47,470 ai đó, đang cố gắng để gây rối với bạn, các lập trình viên. 357 00:17:47,470 --> 00:17:51,038 Và đây là những cách bạn có thể ngăn chặn chống lại họ. 358 00:17:51,038 --> 00:17:54,280 >> ĐỐI TƯỢNG: Vì vậy, tôi có một câu hỏi về hàm băm. 359 00:17:54,280 --> 00:17:59,340 Quiz 1 từ năm 2011, có hai câu hỏi về băm một chiều. 360 00:17:59,340 --> 00:18:02,540 Và tôi đã chỉ tự hỏi điều đó có nghĩa. 361 00:18:02,540 --> 00:18:03,660 >> JASON Hirschhorn: OK, mà bài kiểm tra? 362 00:18:03,660 --> 00:18:03,770 2011? 363 00:18:03,770 --> 00:18:04,705 >> ĐỐI TƯỢNG: Vâng. 364 00:18:04,705 --> 00:18:06,720 >> ĐỐI TƯỢNG: Câu hỏi 1? 365 00:18:06,720 --> 00:18:08,620 >> ĐỐI TƯỢNG: [nghe được]. 366 00:18:08,620 --> 00:18:09,940 Điều đó giống như băm mật khẩu. 367 00:18:09,940 --> 00:18:12,220 Đó không phải đưa mọi thứ - 368 00:18:12,220 --> 00:18:13,440 >> JASON Hirschhorn: trang gì là nó? 369 00:18:13,440 --> 00:18:15,720 >> ĐỐI TƯỢNG: Tôi nghĩ đó là 9 hoặc 10, hoặc cả hai. 370 00:18:15,720 --> 00:18:16,720 >> JASON Hirschhorn: Được rồi, đi trước, Curt. 371 00:18:16,720 --> 00:18:17,780 Bạn có thể trả lời trong khi chúng ta nhìn. 372 00:18:17,780 --> 00:18:19,540 >> ĐỐI TƯỢNG: Tôi nghĩ rằng nó nói về băm mật khẩu. 373 00:18:19,540 --> 00:18:24,430 Như, khi người nào đó nhập mật khẩu, bạn biến nó thành một điều được mã hóa. 374 00:18:24,430 --> 00:18:27,395 Đó là hash mật khẩu, đó là khác nhau từ một hàm băm 375 00:18:27,395 --> 00:18:30,900 đặt cái gì đó vào một bảng băm. 376 00:18:30,900 --> 00:18:31,610 >> JASON Hirschhorn: Hãy xem. 377 00:18:31,610 --> 00:18:33,930 Hãy để tôi kéo lên những gì họ cho là câu trả lời. 378 00:18:33,930 --> 00:18:35,440 Và sau đó chúng ta sẽ đi qua nó. 379 00:18:35,440 --> 00:18:42,430 380 00:18:42,430 --> 00:18:45,400 >> Vì vậy, Curt đã đưa ra một ví dụ tuyệt vời của một một chiều băm. 381 00:18:45,400 --> 00:18:48,800 Khi chúng ta đã thấy trước đây, chúng tôi mất mật khẩu và biến - 382 00:18:48,800 --> 00:18:53,040 nhớ, trong bộ p 7, ai đó có thể có một mật khẩu đó chỉ là mật khẩu, 383 00:18:53,040 --> 00:18:55,300 nhưng sau đó nó được mã hóa vào một số điều thực sự lâu dài. 384 00:18:55,300 --> 00:18:59,830 Một chiều băm có nghĩa là nó là rất dễ dàng để đi từ một cách để người kia, nhưng 385 00:18:59,830 --> 00:19:02,800 nó rất khó để đi từ cách khác trở lại. 386 00:19:02,800 --> 00:19:05,230 >> Và do đó, bạn biết đấy, khi bạn đã kiểm tra mật khẩu của người dân trong vấn đề 387 00:19:05,230 --> 00:19:08,820 thiết lập 7, bạn sẽ có được của họ - 388 00:19:08,820 --> 00:19:11,953 như vậy, ví dụ, nói rằng họ muốn thay đổi mật khẩu của họ, bạn yêu cầu họ 389 00:19:11,953 --> 00:19:13,130 cho mật khẩu cũ của họ. 390 00:19:13,130 --> 00:19:13,910 Bạn mất mật khẩu cũ của họ. 391 00:19:13,910 --> 00:19:15,150 Bạn mã hóa nó. 392 00:19:15,150 --> 00:19:19,240 Và sau đó so sánh hai mã hóa chứ không phải là bản gốc unencrypting 393 00:19:19,240 --> 00:19:20,780 một, bởi vì nó thực sự khó để đi theo cách đó. 394 00:19:20,780 --> 00:19:27,070 395 00:19:27,070 --> 00:19:28,035 Yeah. 396 00:19:28,035 --> 00:19:31,430 >> ĐỐI TƯỢNG: Làm thế nào sâu làm của chúng tôi sự hiểu biết về Telnet có được? 397 00:19:31,430 --> 00:19:34,870 398 00:19:34,870 --> 00:19:41,360 >> JASON Hirschhorn: Nếu nó đã được đề cập một thời gian ngắn trong bài giảng, chỉ cần một ngắn 399 00:19:41,360 --> 00:19:43,260 sự hiểu biết. 400 00:19:43,260 --> 00:19:45,585 Một lần nữa, trở lại câu trả lời cho câu hỏi của Avi - 401 00:19:45,585 --> 00:19:48,260 402 00:19:48,260 --> 00:19:50,430 những điều hơn xuất hiện, nhiều khả năng nó là bạn có được siêu 403 00:19:50,430 --> 00:19:51,530 quen thuộc với họ. 404 00:19:51,530 --> 00:19:54,730 Nếu họ đã chỉ ra trong bài giảng, đó chỉ là một nơi. 405 00:19:54,730 --> 00:19:57,180 Nhưng nếu họ đưa ra trong bài giảng, phần, và một vấn đề thiết lập, sau đó bạn 406 00:19:57,180 --> 00:19:58,710 có thể có được siêu quen thuộc với họ. 407 00:19:58,710 --> 00:20:01,320 408 00:20:01,320 --> 00:20:03,960 >> Vì vậy, tôi có một câu hỏi từ trước đó về - 409 00:20:03,960 --> 00:20:06,950 đang là mùa thu năm 2010 - 410 00:20:06,950 --> 00:20:08,520 Bài kiểm tra 1, chúng ta hãy kéo lên - 411 00:20:08,520 --> 00:20:17,390 412 00:20:17,390 --> 00:20:21,790 câu hỏi này trên ngăn xếp và hàng đợi, mà chúng tôi đã dành một chút công bằng của thời gian 413 00:20:21,790 --> 00:20:23,720 nói về trong bài giảng, thậm chí mặc dù chúng tôi đã không thực sự 414 00:20:23,720 --> 00:20:26,020 bao giờ đánh nó trong phần. 415 00:20:26,020 --> 00:20:33,190 Vì vậy, câu hỏi này được cung cấp cho bạn một loạt các lệnh và yêu cầu bạn những gì 416 00:20:33,190 --> 00:20:35,560 được in trong trường hợp này. 417 00:20:35,560 --> 00:20:40,180 Vì vậy, đây là một câu hỏi hoàn toàn hợp lý mà có thể được yêu cầu của bạn 418 00:20:40,180 --> 00:20:43,090 guys, và sau đó các bạn nên có thể trả lời nó. 419 00:20:43,090 --> 00:20:50,020 >> Vì vậy, tại sao bạn không nhìn vào nó trong 30 giây, và sau đó nếu ai muốn 420 00:20:50,020 --> 00:20:52,140 đề xuất câu trả lời cho tôi, và sau đó chúng ta sẽ đi qua nó. 421 00:20:52,140 --> 00:21:22,590 422 00:21:22,590 --> 00:21:24,235 Được rồi, ai có câu trả lời 27 câu hỏi? 423 00:21:24,235 --> 00:21:31,740 424 00:21:31,740 --> 00:21:33,860 Yeah. 425 00:21:33,860 --> 00:21:40,250 >> ĐỐI TƯỢNG: Có 1, 2, 3, 3? 426 00:21:40,250 --> 00:21:40,780 >> JASON Hirschhorn: Đúng vậy. 427 00:21:40,780 --> 00:21:42,570 27 là 1, 2, 3, 3. 428 00:21:42,570 --> 00:21:44,510 Vì vậy, chúng ta hãy xem làm thế nào chúng ta có đó. 429 00:21:44,510 --> 00:21:48,930 >> Đầu tiên, chúng ta đang nói đến, nếu s là một hàng đợi, những gì được in? 430 00:21:48,930 --> 00:21:53,360 Vì vậy, một q là lần đầu tiên, ra trước. 431 00:21:53,360 --> 00:21:54,680 Chúng tôi đã nhìn thấy rằng trước. 432 00:21:54,680 --> 00:21:56,820 Chúng tôi nhìn thấy hình ảnh của người dân chờ đợi ở Apple 433 00:21:56,820 --> 00:21:58,400 Lưu trữ để mua một số sản phẩm. 434 00:21:58,400 --> 00:22:00,900 Những người đầu tiên trong là những người đầu tiên ra ngoài. 435 00:22:00,900 --> 00:22:02,940 Những điều đầu tiên trong hàng đợi là những điều đầu tiên ra. 436 00:22:02,940 --> 00:22:08,320 >> Vì vậy, nếu chúng ta đẩy một cái gì đó vào một hàng đợi, bạn nhấn 1, sau đó chúng tôi bật 1. 437 00:22:08,320 --> 00:22:09,630 Pop chỉ có nghĩa là đưa ra. 438 00:22:09,630 --> 00:22:11,080 Trong trường hợp này, chỉ cần mang một cái gì đó. 439 00:22:11,080 --> 00:22:12,910 Chúng tôi đưa ra các đầu tiên điều, đó là một 1. 440 00:22:12,910 --> 00:22:15,200 Vì vậy, chúng tôi sẽ đặt mọi thứ chúng tôi in xuống ở đây. 441 00:22:15,200 --> 00:22:18,110 Điều này không còn trong hàng đợi của chúng tôi. 442 00:22:18,110 --> 00:22:23,500 >> Sau đó, chúng tôi đẩy trên 2 và 3, và chúng tôi bật tắt điều đầu tiên. 443 00:22:23,500 --> 00:22:25,030 Một lần nữa, bởi vì đó là một hàng đợi. 444 00:22:25,030 --> 00:22:33,320 Vì vậy chúng tôi có được một 2, sau đó chúng tôi đặt trên một 3 và gọi pop một lần nữa. 445 00:22:33,320 --> 00:22:34,980 3 chúng tôi là đầu tiên. 446 00:22:34,980 --> 00:22:40,940 >> Và sau đó chúng tôi đã có một bó toàn bộ những thứ khác và gọi pop. 447 00:22:40,940 --> 00:22:43,740 Nhưng một lần nữa, vì đây là một hàng đợi, đầu tiên trong, ra đầu tiên. 448 00:22:43,740 --> 00:22:45,980 Chúng tôi đưa ra các điều đầu tiên đã bao giờ đặt in 449 00:22:45,980 --> 00:22:47,100 Kết quả là 3 của chúng tôi. 450 00:22:47,100 --> 00:22:50,060 Và, trong trường hợp này, chúng tôi không lo lắng về tất cả những thứ khác. 451 00:22:50,060 --> 00:22:51,310 Vì vậy, đó là nếu điều này là một hàng đợi. 452 00:22:51,310 --> 00:22:58,917 453 00:22:58,917 --> 00:23:00,167 Thắc mắc về một hàng đợi? 454 00:23:00,167 --> 00:23:03,290 455 00:23:03,290 --> 00:23:04,040 >> Một của ngăn xếp khác nhau. 456 00:23:04,040 --> 00:23:07,782 Các từ viết tắt, chúng tôi có là gì để hiểu một chồng? 457 00:23:07,782 --> 00:23:08,750 >> ĐỐI TƯỢNG: Bài, ra trước. 458 00:23:08,750 --> 00:23:10,130 >> JASON Hirschhorn: LIFO, tôi nghĩ. 459 00:23:10,130 --> 00:23:11,830 Cuối cùng, ra trước. 460 00:23:11,830 --> 00:23:15,630 Vì vậy, chúng ta đã thấy một ví dụ về một chồng khay trong một phòng ăn. 461 00:23:15,630 --> 00:23:17,590 Bất cứ điều gì khay là trên đầu trang được chọn. 462 00:23:17,590 --> 00:23:19,550 Và sau đó nếu khay mới đến trong, họ nhận được đặt lên hàng đầu. 463 00:23:19,550 --> 00:23:21,070 Và sau đó bất cứ điều gì trên đầu được chọn. 464 00:23:21,070 --> 00:23:24,010 Vì vậy, những khay trên có thể dưới ở lại đó một thời gian. 465 00:23:24,010 --> 00:23:28,480 >> Trong trường hợp đó, một lần nữa, chúng tôi sẽ rút ra điều này. 466 00:23:28,480 --> 00:23:31,770 Chúng tôi đẩy vào một, vì vậy một là lần đầu tiên trong dòng. 467 00:23:31,770 --> 00:23:32,790 Và chúng tôi bật một cái gì đó đi. 468 00:23:32,790 --> 00:23:37,280 Và chỉ có một điều trong đó, vì vậy chúng tôi di chuyển 1 ở đây. 469 00:23:37,280 --> 00:23:41,940 Sau đó, chúng tôi đưa vào 2 và 3 và chúng tôi bật một cái gì đó đi. 470 00:23:41,940 --> 00:23:43,650 >> Nhưng một lần nữa, vì đây là một hàng đợi - 471 00:23:43,650 --> 00:23:45,010 hoặc đây là một chồng, chứ không phải - 472 00:23:45,010 --> 00:23:47,480 chúng ta bất cứ điều gì là mới nhất trong. 473 00:23:47,480 --> 00:23:49,300 Bất cứ điều gì là mới nhất trong đi ra đầu tiên. 474 00:23:49,300 --> 00:23:50,890 Và 3 là mới nhất trong. 475 00:23:50,890 --> 00:23:56,110 Vì vậy, chúng tôi đặt 3 ở dưới đó, sau đó chúng tôi đặt trên 3 khác và chúng tôi 476 00:23:56,110 --> 00:23:57,360 bật một cái gì đó một lần nữa. 477 00:23:57,360 --> 00:23:59,990 478 00:23:59,990 --> 00:24:05,710 Cuối cùng, chúng tôi đặt trên 4, 5, 6 và 7, và ở đây chúng tôi bật. 479 00:24:05,710 --> 00:24:09,060 Và bởi vì nó là một chồng, chúng ta bất cứ điều gì đã được đưa vào trước và viết 480 00:24:09,060 --> 00:24:10,240 mà xuống đây. 481 00:24:10,240 --> 00:24:14,256 Vì vậy, chúng tôi kết thúc với 1, 3, 3, 7. 482 00:24:14,256 --> 00:24:17,380 483 00:24:17,380 --> 00:24:21,380 Không ai có thắc mắc về ngăn xếp và hàng đợi, hoặc ví dụ này? 484 00:24:21,380 --> 00:24:27,540 485 00:24:27,540 --> 00:24:29,030 >> OK. 486 00:24:29,030 --> 00:24:30,440 Hãy trở lại vào danh sách các chủ đề. 487 00:24:30,440 --> 00:24:32,510 Không có cách nào, theo cách này. 488 00:24:32,510 --> 00:24:34,280 Những câu hỏi khác để mọi người có? 489 00:24:34,280 --> 00:24:37,550 490 00:24:37,550 --> 00:24:39,480 >> ĐỐI TƯỢNG: Tôi không biết làm thế nào quan trọng này, nhưng tôi đã nhầm lẫn bởi 491 00:24:39,480 --> 00:24:43,550 sự khác biệt giữa các loại các ngôn ngữ như đánh dấu, biên soạn, 492 00:24:43,550 --> 00:24:45,980 giải thích. 493 00:24:45,980 --> 00:24:46,750 >> JASON Hirschhorn: Đó là một câu hỏi hay. 494 00:24:46,750 --> 00:24:50,500 Tôi nghĩ rằng đó là một điều quan trọng, vì vậy hãy đi qua nó một cách nhanh chóng. 495 00:24:50,500 --> 00:24:56,850 Các ngôn ngữ lớn, chúng tôi đã nhìn thấy cho đến nay là C, PHP, và JavaScript, trong điều kiện 496 00:24:56,850 --> 00:24:58,330 của ngôn ngữ lập trình. 497 00:24:58,330 --> 00:25:01,060 HTML, như bạn đã đề cập, không phải là một ngôn ngữ lập trình. 498 00:25:01,060 --> 00:25:02,260 Đó là một ngôn ngữ đánh dấu. 499 00:25:02,260 --> 00:25:05,700 Và sau đó chúng ta có CSS, cũng là không phải là một ngôn ngữ lập trình. 500 00:25:05,700 --> 00:25:10,330 >> Chúng tôi cũng đã nhìn thấy SQL, mà không phải là một ngôn ngữ lập trình một trong hai. 501 00:25:10,330 --> 00:25:15,695 Vì vậy, SQL cho phép bạn viết truy vấn cho một cơ sở dữ liệu. 502 00:25:15,695 --> 00:25:18,370 503 00:25:18,370 --> 00:25:20,140 HTML là một ngôn ngữ đánh dấu. 504 00:25:20,140 --> 00:25:22,570 Nó định nghĩa thế nào những điều được cấu trúc. 505 00:25:22,570 --> 00:25:26,250 Và CSS cho phép bạn tạo kiểu điều. 506 00:25:26,250 --> 00:25:28,520 Đó có thể là mức độ cho những gì bạn cần biết về ba. 507 00:25:28,520 --> 00:25:32,920 Nhưng nó là thú vị hơn với con số ra sự khác biệt giữa C, PHP, 508 00:25:32,920 --> 00:25:34,320 và JavaScript. 509 00:25:34,320 --> 00:25:37,900 >> Vì vậy, một trong những khác biệt lớn nhất, như bạn đã đề cập, là làm thế nào chúng 510 00:25:37,900 --> 00:25:40,550 biên soạn, hoặc bất cứ điều gì tương đương là. 511 00:25:40,550 --> 00:25:42,580 Do đó, C được biên dịch. 512 00:25:42,580 --> 00:25:43,950 Chúng tôi sẽ luôn luôn chạy một trình biên dịch. 513 00:25:43,950 --> 00:25:51,100 Và sau đó, nơi là lỗi của bạn khi bạn chạy trình biên dịch C? 514 00:25:51,100 --> 00:25:55,740 Nơi nào nó cho bạn thấy lỗi trong mã của bạn? 515 00:25:55,740 --> 00:25:57,860 Làm thế nào để bạn biết có một lỗi trong mã của bạn trong C? 516 00:25:57,860 --> 00:25:58,770 >> ĐỐI TƯỢNG: Nó cho thấy bạn trong thiết bị đầu cuối. 517 00:25:58,770 --> 00:26:00,410 >> JASON Hirschhorn: Nó cho thấy bạn trong thiết bị đầu cuối như bạn đang biên soạn. 518 00:26:00,410 --> 00:26:02,620 Và nếu có sai sót, nó sẽ không thực sự biên dịch nó. 519 00:26:02,620 --> 00:26:04,830 Vì vậy, bạn biết rằng có những lỗi ngay đi, trước thời hạn, trước khi bạn 520 00:26:04,830 --> 00:26:06,050 thậm chí chạy mã của bạn. 521 00:26:06,050 --> 00:26:10,010 >> Tất nhiên, bạn có thể chạy mã của bạn và nhận được một lỗi phân khúc, nhưng đó là 522 00:26:10,010 --> 00:26:12,350 có lẽ vì bạn đã làm một số điều lý ngớ ngẩn. 523 00:26:12,350 --> 00:26:15,770 Nhưng mã của bạn với kỹ thuật tất cả chính xác và có thể chạy. 524 00:26:15,770 --> 00:26:18,210 Vì vậy, mã C được biên dịch trước thời hạn. 525 00:26:18,210 --> 00:26:19,760 Những gì về mã PHP? 526 00:26:19,760 --> 00:26:21,430 Nơi một số lỗi trong mã PHP của bạn? 527 00:26:21,430 --> 00:26:23,170 Làm thế nào bạn biết bạn đã có lỗi trong mã PHP của bạn? 528 00:26:23,170 --> 00:26:26,038 529 00:26:26,038 --> 00:26:28,430 >> ĐỐI TƯỢNG: Chạy thời gian? 530 00:26:28,430 --> 00:26:31,230 >> JASON Hirschhorn: Vâng, khi bạn sẽ chạy nó, bạn sẽ chạy 531 00:26:31,230 --> 00:26:32,180 Mã PHP ở phía sau. 532 00:26:32,180 --> 00:26:33,300 Và sau đó bạn sẽ hiển thị một màn hình. 533 00:26:33,300 --> 00:26:35,260 Bạn có thể thấy một số thứ trên đầu trang, nhưng sau đó bạn sẽ thấy, như, một số 534 00:26:35,260 --> 00:26:36,710 cam, bảng xấu xí. 535 00:26:36,710 --> 00:26:41,420 Và nó sẽ cung cấp cho bạn một số dòng và nói, blah, blah, blah, công cụ này 536 00:26:41,420 --> 00:26:42,400 không làm việc. 537 00:26:42,400 --> 00:26:48,730 >> Vì vậy, PHP được giải thích từng dòng và thực hiện trên máy chủ. 538 00:26:48,730 --> 00:26:52,380 Và sau đó kết quả là gửi qua cho bạn. 539 00:26:52,380 --> 00:26:53,340 Tuyệt vời. 540 00:26:53,340 --> 00:26:56,410 Thực hiện trong dòng máy chủ dòng và sau đó gửi qua cho bạn. 541 00:26:56,410 --> 00:26:59,010 Và nếu có một lỗi, nó sẽ gửi bạn lỗi, nhưng bạn có thể có 542 00:26:59,010 --> 00:27:00,400 nhận được một số thứ trước thời hạn. 543 00:27:00,400 --> 00:27:02,730 Vì vậy, một số của nó có thể làm việc, nhưng sau này, một số công cụ có thể không có 544 00:27:02,730 --> 00:27:03,890 không làm việc. 545 00:27:03,890 --> 00:27:04,600 >> Những gì về JavaScript? 546 00:27:04,600 --> 00:27:06,065 Nơi mà bạn đã nhìn thấy các lỗi JavaScript? 547 00:27:06,065 --> 00:27:10,860 548 00:27:10,860 --> 00:27:12,870 Trong p thiết lập 8, khi bạn có một lỗi, làm thế nào bạn có biết? 549 00:27:12,870 --> 00:27:13,710 Nơi mà nó sẽ hiển thị? 550 00:27:13,710 --> 00:27:15,900 >> ĐỐI TƯỢNG: Trong giao diện điều khiển, ở phía dưới. 551 00:27:15,900 --> 00:27:17,650 >> JASON Hirschhorn: Trong giao diện điều khiển, ở phía dưới. 552 00:27:17,650 --> 00:27:20,160 Nó cũng sẽ cung cấp cho bạn số dòng, và nó sẽ 553 00:27:20,160 --> 00:27:21,330 hiện ở phía dưới. 554 00:27:21,330 --> 00:27:24,320 Và JavaScript không thực hiện trên máy chủ. 555 00:27:24,320 --> 00:27:27,800 JavaScript đã được gửi đến máy tính của bạn, và sau đó khi nó là thời gian để chạy 556 00:27:27,800 --> 00:27:31,670 JavaScript, JavaScript là chạy từng dòng trên 557 00:27:31,670 --> 00:27:33,410 khách hàng, về phía bạn. 558 00:27:33,410 --> 00:27:35,570 Không phải là máy chủ, các mặt hàng. 559 00:27:35,570 --> 00:27:37,690 >> Và tương tự, đó là chạy từng dòng. 560 00:27:37,690 --> 00:27:40,630 Và sau đó khi bạn sẽ nhận được một lỗi, nó sẽ hiển thị ở phía dưới. 561 00:27:40,630 --> 00:27:44,580 Tương tự như PHP, một số nó có thể thực hiện, và sau đó bạn có thể nhận được một 562 00:27:44,580 --> 00:27:46,310 lỗi sau này. 563 00:27:46,310 --> 00:27:49,910 >> Ngoài ra, một chút không giống như PHP, nếu bạn có một lỗi JavaScript - 564 00:27:49,910 --> 00:27:52,780 nói rằng bạn đã không làm đúng các mã cho một hộp cảnh báo - 565 00:27:52,780 --> 00:27:55,800 bạn có thể tiếp tục chạy chương trình của bạn. 566 00:27:55,800 --> 00:27:58,180 Hộp cảnh báo sẽ không làm việc, nhưng chương trình của bạn sẽ là tốt. 567 00:27:58,180 --> 00:28:00,490 Chỉ có thể chức năng đó sẽ thất bại. 568 00:28:00,490 --> 00:28:02,610 >> Do đó, có một số lớn nhất sự khác biệt về cách thức các 569 00:28:02,610 --> 00:28:09,230 ngôn ngữ, hoặc làm thế nào các mã lập trình bạn viết thực sự đánh giá. 570 00:28:09,230 --> 00:28:11,970 Ngoài ra còn có sự khác biệt khác trong về - sự khác biệt lớn nhất 571 00:28:11,970 --> 00:28:15,590 chúng ta đã thấy trong các biến số trong các ngôn ngữ khác nhau. 572 00:28:15,590 --> 00:28:19,660 Vì vậy, bất cứ ai có thể cho tôi một sự khác biệt giữa các biến 573 00:28:19,660 --> 00:28:20,910 trong ba ngôn ngữ? 574 00:28:20,910 --> 00:28:24,802 575 00:28:24,802 --> 00:28:25,770 Vâng. 576 00:28:25,770 --> 00:28:27,130 >> ĐỐI TƯỢNG: Trong C, chúng gõ đúng. 577 00:28:27,130 --> 00:28:28,550 Trong hai người kia, họ lỏng lẻo. 578 00:28:28,550 --> 00:28:30,040 >> JASON Hirschhorn: Và có nghĩa là gì? 579 00:28:30,040 --> 00:28:31,775 >> ĐỐI TƯỢNG: Đó là trong C, bạn phải khai báo loại biến khi 580 00:28:31,775 --> 00:28:36,140 bạn khai báo các biến, như interbool hoặc char. 581 00:28:36,140 --> 00:28:36,990 >> JASON Hirschhorn: Tuyệt vời. 582 00:28:36,990 --> 00:28:39,780 Trong C, chúng tôi luôn luôn phải đặt một loại của một biến. 583 00:28:39,780 --> 00:28:41,360 Và chúng ta có thể không thực sự pha trộn các loại. 584 00:28:41,360 --> 00:28:45,750 Bạn không thể làm một số nguyên cộng với một chuỗi. 585 00:28:45,750 --> 00:28:48,760 Nhưng như chúng ta đã thấy trong những khác ngôn ngữ, bạn thực sự có thể kết hợp các loại, 586 00:28:48,760 --> 00:28:51,230 và bạn không bao giờ thực sự có để cung cấp cho một cái gì đó một loại, bao giờ hết. 587 00:28:51,230 --> 00:28:53,905 >> Vì vậy, làm thế nào để chúng ta biết điều này là biến trong PHP và JavaScript? 588 00:28:53,905 --> 00:28:57,120 589 00:28:57,120 --> 00:28:58,685 >> ĐỐI TƯỢNG: Trong PHP, họ bắt đầu với một ký hiệu đô la. 590 00:28:58,685 --> 00:29:00,810 Trong JavaScript, khi bạn khai báo họ, bạn phải có một quán bar. 591 00:29:00,810 --> 00:29:01,760 >> JASON Hirschhorn: Đúng vậy. 592 00:29:01,760 --> 00:29:03,535 Vì vậy, trong PHP, họ bắt đầu với một ký hiệu đô la. 593 00:29:03,535 --> 00:29:06,300 Trong JavaScript, họ phải có bar, mặc dù đôi khi họ không thực sự 594 00:29:06,300 --> 00:29:07,520 phải có quán bar. 595 00:29:07,520 --> 00:29:09,240 Nhưng đó là chính xác. 596 00:29:09,240 --> 00:29:13,300 >> Vì vậy, đó là một sự khác biệt lớn giữa các biến. 597 00:29:13,300 --> 00:29:16,140 Tôi nghĩ đó là có thể, ngoài khơi đỉnh đầu của tôi, hai lớn nhất 598 00:29:16,140 --> 00:29:19,250 sự khác nhau giữa các ba ngôn ngữ. 599 00:29:19,250 --> 00:29:20,594 Nhưng, yeah. 600 00:29:20,594 --> 00:29:24,720 >> ĐỐI TƯỢNG: Và phạm vi của các biến C được giới hạn trong dấu ngoặc nhọn, 601 00:29:24,720 --> 00:29:27,760 nơi những người khác, nó chỉ là thích, nó chết nếu nó trong một chỉ có chức năng, 602 00:29:27,760 --> 00:29:29,650 nhưng nếu không, nó là - 603 00:29:29,650 --> 00:29:30,240 >> JASON Hirschhorn: Đúng vậy. 604 00:29:30,240 --> 00:29:36,780 Vì vậy, phạm vi là hơi khác nhau trong C. bạn hãy nhớ rằng, dấu ngoặc nhọn xác định 605 00:29:36,780 --> 00:29:37,710 phạm vi của các biến. 606 00:29:37,710 --> 00:29:41,680 Vì vậy, nếu nó được định nghĩa bên trong một nếu điều kiện, đó là trong một vòng lặp, 607 00:29:41,680 --> 00:29:44,290 biến chỉ tồn tại ở đó. 608 00:29:44,290 --> 00:29:47,760 >> Trong JavaScript, nếu một biến được định nghĩa bên trong một nếu điều kiện - 609 00:29:47,760 --> 00:29:50,750 bên trong một vòng lặp - nó sẽ tồn tại cho chức năng đó, nhưng nó sẽ không tồn tại 610 00:29:50,750 --> 00:29:52,330 ngoài chức năng đó. 611 00:29:52,330 --> 00:29:59,250 Vì vậy, phạm vi là một ít linh hoạt hơn trong JavaScript và PHP. 612 00:29:59,250 --> 00:30:00,500 Mà trả lời câu hỏi? 613 00:30:00,500 --> 00:30:03,110 614 00:30:03,110 --> 00:30:04,635 OK, bất kỳ câu hỏi nào khác không? 615 00:30:04,635 --> 00:30:07,260 616 00:30:07,260 --> 00:30:08,865 Chúng ta có thể làm thêm bốn phút các câu hỏi, sau đó 617 00:30:08,865 --> 00:30:10,740 chúng tôi sẽ nhảy vào viết mã. 618 00:30:10,740 --> 00:30:12,645 >> ĐỐI TƯỢNG: Chúng ta có thể đi vào Ajax và nói về chuyện đó là gì? 619 00:30:12,645 --> 00:30:15,670 620 00:30:15,670 --> 00:30:17,800 >> JASON Hirschhorn: Nói chuyện với Avi sau. 621 00:30:17,800 --> 00:30:19,170 Ông hỏi câu hỏi đó trước đó. 622 00:30:19,170 --> 00:30:19,630 >> ĐỐI TƯỢNG: xấu của tôi. 623 00:30:19,630 --> 00:30:20,880 >> JASON Hirschhorn: Không có lo lắng. 624 00:30:20,880 --> 00:30:22,740 625 00:30:22,740 --> 00:30:24,290 >> ĐỐI TƯỢNG: Những gì chính xác là JSON? 626 00:30:24,290 --> 00:30:28,360 627 00:30:28,360 --> 00:30:28,900 >> JASON Hirschhorn: JSON là gì? 628 00:30:28,900 --> 00:30:29,930 Câu hỏi của bạn là gì? 629 00:30:29,930 --> 00:30:31,350 >> ĐỐI TƯỢNG: Chỉ cần thực sự nhanh chóng, sự khác biệt giữa 630 00:30:31,350 --> 00:30:32,870 in ấn và tiếng vang trong PHP. 631 00:30:32,870 --> 00:30:36,200 632 00:30:36,200 --> 00:30:38,490 >> JASON Hirschhorn: Tại sao bạn không google sự khác biệt giữa in ấn và tiếng vang? 633 00:30:38,490 --> 00:30:40,670 Sự khác biệt nhỏ. 634 00:30:40,670 --> 00:30:42,020 Không phải là lớn của một thỏa thuận. 635 00:30:42,020 --> 00:30:44,960 Nhưng bạn chắc chắn nên google nó, và rằng sẽ cung cấp cho bạn một câu trả lời tốt. 636 00:30:44,960 --> 00:30:46,910 >> JSON, có lẽ lớn hơn của một thỏa thuận. 637 00:30:46,910 --> 00:30:49,300 Là viết tắt của JavaScript Object Notation. 638 00:30:49,300 --> 00:30:51,865 Và khi chúng ta đã thấy JSON được sử dụng? 639 00:30:51,865 --> 00:30:55,110 640 00:30:55,110 --> 00:30:55,900 Khi bạn nhìn thấy - 641 00:30:55,900 --> 00:30:57,400 tại sao bạn thậm chí không biết từ JSON? 642 00:30:57,400 --> 00:30:59,140 Khi bạn nhìn thấy nó? 643 00:30:59,140 --> 00:31:02,200 >> ĐỐI TƯỢNG: Khi chúng tôi nhận được cổ phiếu trích dẫn cho tài chính. 644 00:31:02,200 --> 00:31:02,690 >> JASON Hirschhorn: Vì vậy, bạn thấy khi bạn đã nhận được 645 00:31:02,690 --> 00:31:04,830 cổ phiếu trích dẫn cho tài chính. 646 00:31:04,830 --> 00:31:07,340 Và tại sao bạn nhìn thấy nó? 647 00:31:07,340 --> 00:31:09,000 >> ĐỐI TƯỢNG: Khi chúng tôi lấy tất cả các thông tin mà 648 00:31:09,000 --> 00:31:10,400 đến trong định dạng đó. 649 00:31:10,400 --> 00:31:11,700 >> JASON Hirschhorn: Vì vậy, bạn sẽ nhận được - 650 00:31:11,700 --> 00:31:12,540 yeah. 651 00:31:12,540 --> 00:31:13,020 Đi trước. 652 00:31:13,020 --> 00:31:15,210 >> ĐỐI TƯỢNG: [nghe được] thông tin của một đối tượng? 653 00:31:15,210 --> 00:31:17,170 >> JASON Hirschhorn: Cả hai của những đặt lại với nhau là câu trả lời 654 00:31:17,170 --> 00:31:18,100 chúng tôi đang tìm kiếm. 655 00:31:18,100 --> 00:31:21,240 Bạn muốn thông tin từ trang web này khác. 656 00:31:21,240 --> 00:31:23,790 Và bạn sẽ hy vọng rằng khi bạn nhận được thông tin rằng, nó sẽ là 657 00:31:23,790 --> 00:31:26,720 giới thiệu cho bạn trong một số loại định dạng tiêu chuẩn. 658 00:31:26,720 --> 00:31:29,530 >> Tất cả mọi người có lẽ là quen thuộc với các giá trị bằng dấu phẩy. 659 00:31:29,530 --> 00:31:32,970 Bạn có thể xuất một bảng tính Excel hoặc bất kỳ loại bảng tính như là một danh sách các 660 00:31:32,970 --> 00:31:34,540 giá trị bằng dấu phẩy. 661 00:31:34,540 --> 00:31:37,370 Và dấu phẩy phân chia tất cả các lĩnh vực khác nhau. 662 00:31:37,370 --> 00:31:38,780 JavaScript Object Notation - 663 00:31:38,780 --> 00:31:39,440 JSON - 664 00:31:39,440 --> 00:31:43,540 là một loại tiêu chuẩn bố trí của sự vật. 665 00:31:43,540 --> 00:31:49,010 Và đó là cách chúng tôi thường lấy thông tin từ các truy vấn Ajax của chúng tôi. 666 00:31:49,010 --> 00:31:51,770 >> Vì vậy, trong trường hợp này, chúng tôi đã nhận nó từ trang Yahoo. 667 00:31:51,770 --> 00:31:53,600 Họ trở về những điều chúng tôi trong một đối tượng JSON. 668 00:31:53,600 --> 00:31:56,790 Và sau đó chúng ta biết, bởi vì nó một tiêu chuẩn, những gì nó 669 00:31:56,790 --> 00:31:57,250 sẽ như thế nào. 670 00:31:57,250 --> 00:32:00,760 Vì vậy chúng tôi có thể lặp qua mảng đó là quay trở lại với chúng tôi, các mảng 671 00:32:00,760 --> 00:32:03,180 các đối tượng được trả về cho chúng tôi. 672 00:32:03,180 --> 00:32:07,770 >> Chúng tôi có lẽ cần phải biết các phím, nhưng họ thường cung cấp cho bạn 673 00:32:07,770 --> 00:32:11,370 tài liệu hướng dẫn trong trang web khi bạn đang tải một số JSON 674 00:32:11,370 --> 00:32:12,170 ký hiệu cho họ. 675 00:32:12,170 --> 00:32:16,940 Tương tự như vậy, bạn có thể JSON mã hóa một đối tượng. 676 00:32:16,940 --> 00:32:19,900 Do đó, có một chức năng JSON nhấn mạnh mã hóa. 677 00:32:19,900 --> 00:32:22,970 Và do đó bạn có thể mất một đối tượng bạn đã tạo ra, JSON mã hóa nó, và 678 00:32:22,970 --> 00:32:26,390 vượt qua nó vào một cái gì đó khác, nếu bạn muốn. 679 00:32:26,390 --> 00:32:30,770 JSON và giải mã cũng tồn tại cho một mục đích tương tự, hoặc cho 680 00:32:30,770 --> 00:32:31,780 mục đích ngược lại. 681 00:32:31,780 --> 00:32:36,570 >> ĐỐI TƯỢNG: Chúng ta cần phải biết mã hóa cho bảng băm và cố gắng? 682 00:32:36,570 --> 00:32:40,300 Hay chúng ta chỉ cần hiểu làm thế nào họ đang sử dụng, khái niệm? 683 00:32:40,300 --> 00:32:44,570 >> JASON Hirschhorn: Vì vậy, nâng cao tay của bạn nếu bạn đã làm một bảng băm cho p thiết lập 4 684 00:32:44,570 --> 00:32:46,920 với một danh sách liên kết. 685 00:32:46,920 --> 00:32:47,960 Hoặc thiết lập p 5. 686 00:32:47,960 --> 00:32:49,060 Vì vậy, đó là một phần lớn mọi người. 687 00:32:49,060 --> 00:32:50,390 P thiết lập 5, 6, những người hiểu biết. 688 00:32:50,390 --> 00:32:51,240 Một thời gian dài trước đây. 689 00:32:51,240 --> 00:32:54,140 >> Vì vậy, đại đa số các bạn đã làm băm bảng với danh sách liên kết. 690 00:32:54,140 --> 00:32:56,525 Và bởi vì đó có thể là nhiều hơn phương pháp phổ biến, và bởi vì chúng tôi đã dành 691 00:32:56,525 --> 00:32:59,460 rất nhiều thời gian làm các danh sách liên kết và băm bảng, bạn có lẽ nên được 692 00:32:59,460 --> 00:33:02,600 khá quen thuộc với cách mã một bảng băm và một danh sách liên kết. 693 00:33:02,600 --> 00:33:05,060 >> Và nếu bạn nghĩ về vấn đề đó thiết lập, nó đã không thực sự 694 00:33:05,060 --> 00:33:06,410 khó như bạn mong đợi. 695 00:33:06,410 --> 00:33:08,120 Và đã có ít hơn rất nhiều mã hơn bạn mong đợi. 696 00:33:08,120 --> 00:33:11,150 697 00:33:11,150 --> 00:33:14,650 Tôi sẽ nói rằng bạn nên biết làm thế nào để mã một bảng băm hoặc một danh sách liên kết. 698 00:33:14,650 --> 00:33:17,010 Không phải là bạn sẽ được yêu cầu đó, nhất thiết, nhưng bạn nên 699 00:33:17,010 --> 00:33:19,730 chắc chắn biết điều đó. 700 00:33:19,730 --> 00:33:21,860 >> Ngoài ra, nếu bạn xem xét thông qua các câu đố qua, đã có rất nhiều 701 00:33:21,860 --> 00:33:26,450 câu hỏi về cách viết các chức năng trên danh sách liên kết hoặc danh sách liên kết kép. 702 00:33:26,450 --> 00:33:28,370 Điều đó có vẻ đi lên mỗi năm. 703 00:33:28,370 --> 00:33:31,940 Đúng chèn vào một danh sách liên kết, ngay xóa từ một danh sách liên kết, phải chèn 704 00:33:31,940 --> 00:33:33,610 cho một danh sách liên kết kép, vân vân. 705 00:33:33,610 --> 00:33:36,170 Do đó, tôi cảm thấy khá thoải mái nói rằng bạn nên biết rằng. 706 00:33:36,170 --> 00:33:40,600 >> Cho thử, tôi sẽ nói bạn nên chắc chắn biết làm thế nào nó hoạt động, và có thể 707 00:33:40,600 --> 00:33:43,570 đưa ra một số giả cho như thế nào mã nó và thiết lập nó. 708 00:33:43,570 --> 00:33:45,600 Nhưng nó sẽ không phải là điều tồi tệ nhất trong thế giới nếu bạn không biết làm thế nào để 709 00:33:45,600 --> 00:33:48,870 mã nó trong C. Nó sẽ là tuyệt vời nếu bạn biết làm thế nào để mã nó trong C, nhưng tôi nghĩ rằng 710 00:33:48,870 --> 00:33:52,516 có thể giả cho một thử sẽ là hầu hết các bạn sẽ cần 711 00:33:52,516 --> 00:33:53,270 để biết một thử. 712 00:33:53,270 --> 00:33:53,930 >> ĐỐI TƯỢNG: tín dụng bổ sung? 713 00:33:53,930 --> 00:33:58,290 >> JASON Hirschhorn: Và cùng với, nếu chúng ta đi vào cây tìm kiếm nhị phân, bạn có thể 714 00:33:58,290 --> 00:34:02,320 cần - và bạn đã thấy trong quá khứ, chúng tôi đã thực hiện rất nhiều - bạn biết làm thế nào 715 00:34:02,320 --> 00:34:03,380 cây tìm kiếm nhị phân làm việc. 716 00:34:03,380 --> 00:34:07,150 Có thể bạn sẽ có thể thiết lập một trong mã giả. 717 00:34:07,150 --> 00:34:10,510 Nhưng vì phần lớn mọi người không làm điều đó trên vấn đề 718 00:34:10,510 --> 00:34:13,880 thiết lập, tôi muốn nói đây có thể là ít hơn quan trọng là bạn biết làm thế nào để mã 719 00:34:13,880 --> 00:34:17,380 và thiết lập một cây như thế. 720 00:34:17,380 --> 00:34:19,679 >> Bất kỳ câu hỏi nào khác không? 721 00:34:19,679 --> 00:34:23,234 Ngoài ra, chúng tôi có thể yêu cầu họ trong suốt như chúng tôi đi qua một số vấn đề. 722 00:34:23,234 --> 00:34:27,170 OK, chúng ta sẽ di chuyển trên. 723 00:34:27,170 --> 00:34:28,230 Bỏ qua trượt cho bây giờ. 724 00:34:28,230 --> 00:34:32,449 >> Nói về cây, đó là lần đầu tiên câu hỏi tôi có cho các bạn. 725 00:34:32,449 --> 00:34:34,270 Bởi vì đây là một vấn đề. 726 00:34:34,270 --> 00:34:37,380 Tôi có thể nói nó rất có thể bạn sẽ được một vấn đề như thế này trên bài kiểm tra của bạn 727 00:34:37,380 --> 00:34:43,659 yêu cầu bạn mã một số loại chèn, xóa, tìm kiếm, cho một loại 728 00:34:43,659 --> 00:34:45,270 cấu trúc dữ liệu, chúng tôi đã nhìn thấy. 729 00:34:45,270 --> 00:34:47,719 >> Mà đi lên mỗi năm và chúng tôi đã dành một rất nhiều thời gian nửa cuối năm này 730 00:34:47,719 --> 00:34:50,270 học kỳ đi qua các loại dữ liệu. 731 00:34:50,270 --> 00:34:54,170 Vì vậy, ngay bây giờ, tôi đã xác định một nút trong một cây tìm kiếm nhị phân. 732 00:34:54,170 --> 00:34:58,490 Và những gì tôi muốn bạn làm là cho một cây tìm kiếm nhị phân bắt đầu 733 00:34:58,490 --> 00:35:05,450 lúc này sao gốc nút, hoàn thành thực hiện các chức năng dưới đây, 734 00:35:05,450 --> 00:35:07,430 mà sẽ xảy ra là một chức năng tìm. 735 00:35:07,430 --> 00:35:09,260 Và làm điều đó có và không có recursions. 736 00:35:09,260 --> 00:35:10,860 >> Vì vậy, tôi muốn bạn để viết hai chức năng. 737 00:35:10,860 --> 00:35:14,310 Một làm điều này với đệ quy, một làm điều này mà không cần đệ quy. 738 00:35:14,310 --> 00:35:18,050 Và không giả định rằng gốc sẽ không null. 739 00:35:18,050 --> 00:35:21,790 Vì vậy, chúng tôi đang tìm kiếm các số nguyên i trong cây bắt đầu từ gốc, và chúng ta cần 740 00:35:21,790 --> 00:35:25,280 để viết này đệ quy và lặp đi lặp lại. 741 00:35:25,280 --> 00:35:26,300 Yeah. 742 00:35:26,300 --> 00:35:29,730 >> ĐỐI TƯỢNG: Vì vậy, bạn muốn chúng tôi để trở về đúng nếu chúng ta tìm thấy nó, và sai nếu chúng ta 743 00:35:29,730 --> 00:35:30,480 không tìm thấy nó. 744 00:35:30,480 --> 00:35:32,160 >> JASON Hirschhorn: Làm thế nào bạn có biết? 745 00:35:32,160 --> 00:35:33,100 Làm thế nào bạn có biết rằng? 746 00:35:33,100 --> 00:35:36,500 >> ĐỐI TƯỢNG: Tôi đã yêu cầu đầu tiên, nhưng tôi đã giả định, bởi vì nó nói bool tại 747 00:35:36,500 --> 00:35:37,490 đầu của hàm. 748 00:35:37,490 --> 00:35:37,880 >> JASON Hirschhorn: Đúng vậy. 749 00:35:37,880 --> 00:35:41,020 Nó nói bool, vì vậy tôi thậm chí không cần phải nói cho bạn biết những gì tôi mong đợi bạn trở lại 750 00:35:41,020 --> 00:35:41,350 bởi vì nó nói đúng đó. 751 00:35:41,350 --> 00:35:42,280 Nhưng đó là đúng. 752 00:35:42,280 --> 00:35:43,510 Trở lại, đúng hay sai. 753 00:35:43,510 --> 00:35:47,630 >> Vì vậy, trước khi bạn bắt đầu, tôi muốn giới thiệu, nếu bạn không quen với 754 00:35:47,630 --> 00:35:51,300 cây tìm kiếm nhị phân, nhanh chóng vẽ một hình ảnh của nó để có được của bạn 755 00:35:51,300 --> 00:35:51,750 sự hiểu biết, phải. 756 00:35:51,750 --> 00:35:54,720 Điều đó cũng sẽ giúp bạn khi viết mã và kiểm tra nó của bạn. 757 00:35:54,720 --> 00:35:57,830 Một lần nữa, bạn cũng không có nhiều thời gian trên các bài kiểm tra để làm tất cả những điều 758 00:35:57,830 --> 00:35:59,030 mà chúng tôi yêu cầu bạn phải làm. 759 00:35:59,030 --> 00:36:02,350 Vì vậy, viết mã giả là rất hữu ích. 760 00:36:02,350 --> 00:36:05,310 >> Và chúng tôi thường cung cấp về - 761 00:36:05,310 --> 00:36:06,820 nếu giả là hoàn hảo chính xác, đó là 762 00:36:06,820 --> 00:36:08,910 nói chung là 50% trên một câu hỏi. 763 00:36:08,910 --> 00:36:11,410 Vì vậy, nó không phải là một quy tắc cứng và nhanh chóng, nhưng nếu bạn chỉ cần viết mã giả và nó 764 00:36:11,410 --> 00:36:13,460 đúng, nó thường 50%. 765 00:36:13,460 --> 00:36:14,970 Vì vậy, tôi luôn luôn khuyên - 766 00:36:14,970 --> 00:36:16,870 nếu bạn đang ép cho thời gian, hoặc thậm chí nếu bạn chỉ cần cố gắng tìm ra nó - 767 00:36:16,870 --> 00:36:18,290 bắt đầu với giả. 768 00:36:18,290 --> 00:36:24,840 Và cuối cùng, nếu bạn có thể viết này tất cả trong C, đó sẽ là tuyệt vời. 769 00:36:24,840 --> 00:36:29,010 >> Vì vậy, chúng ta hãy ba phút để làm việc trên chương trình này. 770 00:36:29,010 --> 00:36:33,120 Và sau đó chúng ta sẽ viết giả cho nó chỉ một lần, và sau đó 771 00:36:33,120 --> 00:36:35,455 chúng ta sẽ mã nó đệ quy và sau đó lặp đi lặp lại. 772 00:36:35,455 --> 00:37:28,720 773 00:37:28,720 --> 00:37:30,760 >> Nếu bạn có bất kỳ câu hỏi, cảm thấy miễn phí giơ tay lên. 774 00:37:30,760 --> 00:37:34,270 Hạnh phúc để đi bộ xung quanh và trả lời trước khi chúng tôi bắt đầu như là một nhóm. 775 00:37:34,270 --> 00:39:22,600 776 00:39:22,600 --> 00:39:27,200 >> Hãy để chúng tôi tiếp tục, và chúng ta sẽ giả phiên bản đệ quy 777 00:39:27,200 --> 00:39:29,830 này, và sau đó chúng tôi sẽ mã nó. 778 00:39:29,830 --> 00:39:33,380 Vì vậy, một hàm đệ quy cần hai điều. 779 00:39:33,380 --> 00:39:35,960 Điều này có thể là một câu hỏi mà bạn có thể được yêu cầu. 780 00:39:35,960 --> 00:39:37,950 Cần hai điều. 781 00:39:37,950 --> 00:39:40,610 Ai có thể giơ tay lên và nói với tôi những gì hai điều một đệ quy 782 00:39:40,610 --> 00:39:43,680 chức năng cần? 783 00:39:43,680 --> 00:39:45,030 Theo định nghĩa nó có hai điều. 784 00:39:45,030 --> 00:39:46,280 Hai điều này là gì? 785 00:39:46,280 --> 00:39:48,580 786 00:39:48,580 --> 00:39:49,830 Tay mới. 787 00:39:49,830 --> 00:39:55,050 788 00:39:55,050 --> 00:39:56,390 Có, Alden. 789 00:39:56,390 --> 00:39:57,980 >> ĐỐI TƯỢNG: Vì vậy, tôi không chắc chắn chính xác nếu thuật ngữ này, nhưng - 790 00:39:57,980 --> 00:39:59,715 >> JASON Hirschhorn: Tôi rất vui bạn đang nâng cao tay của bạn. 791 00:39:59,715 --> 00:40:03,380 >> ĐỐI TƯỢNG: Nó cần một trường hợp cơ sở, và nó cần một bước đệ quy. 792 00:40:03,380 --> 00:40:03,960 >> JASON Hirschhorn: hoàn hảo. 793 00:40:03,960 --> 00:40:06,340 Nó cần một trường hợp cơ sở và một bước đệ quy. 794 00:40:06,340 --> 00:40:10,430 Vì vậy, trường hợp cơ sở của chúng tôi ở đây là gì? 795 00:40:10,430 --> 00:40:12,950 >> ĐỐI TƯỢNG: F gốc bằng bằng null. 796 00:40:12,950 --> 00:40:15,110 Xin lỗi, chỉ trong giả, nếu đó là vô giá trị. 797 00:40:15,110 --> 00:40:16,360 Nếu gốc là null. 798 00:40:16,360 --> 00:40:21,900 799 00:40:21,900 --> 00:40:23,540 >> JASON Hirschhorn: Nếu gốc là null. 800 00:40:23,540 --> 00:40:23,850 Đó là tuyệt vời. 801 00:40:23,850 --> 00:40:24,610 Đó là trường hợp cơ sở của chúng tôi. 802 00:40:24,610 --> 00:40:25,910 Đó là những gì chúng ta sẽ để kiểm tra tất cả các thời gian. 803 00:40:25,910 --> 00:40:28,000 Và trường hợp cơ sở là Điều đầu tiên bạn làm. 804 00:40:28,000 --> 00:40:29,720 Nếu bạn nhấn trường hợp cơ sở, bạn đang thực hiện. 805 00:40:29,720 --> 00:40:34,140 >> Bây giờ chúng ta cần phải gọi đệ quy của chúng tôi, và tôi muốn sẵn sàng cược rằng chúng ta cần một vài 806 00:40:34,140 --> 00:40:35,440 đệ quy gọi đây. 807 00:40:35,440 --> 00:40:39,630 Bởi vì đó là một cây, và chúng tôi có thể đi theo nhiều cách. 808 00:40:39,630 --> 00:40:43,190 Vì vậy, nếu gốc là vô giá trị, chúng tôi đang tốt. 809 00:40:43,190 --> 00:40:44,970 >> Bạn đề nghị những gì? 810 00:40:44,970 --> 00:40:49,640 Và bây giờ tôi sẽ bắt đầu gọi điện thoại ra trên các bạn, bởi vì tôi biết các bạn 811 00:40:49,640 --> 00:40:50,540 đều biết điều này. 812 00:40:50,540 --> 00:40:52,610 Nhưng Annie, những gì nên dòng tiếp theo là gì? 813 00:40:52,610 --> 00:40:53,570 Nếu chúng ta tìm thấy nó? 814 00:40:53,570 --> 00:40:55,526 Chúng ta phải làm gì? 815 00:40:55,526 --> 00:40:57,300 >> ĐỐI TƯỢNG: Nếu chúng tôi tìm thấy nó? 816 00:40:57,300 --> 00:40:59,160 >> JASON Hirschhorn: Hoặc nên là - 817 00:40:59,160 --> 00:41:02,124 cung cấp cho tôi những giả cho đường, nơi chúng tôi tìm thấy nó. 818 00:41:02,124 --> 00:41:04,700 >> ĐỐI TƯỢNG: Nếu tôi bằng gốc tôi? 819 00:41:04,700 --> 00:41:06,650 >> JASON Hirschhorn: Và sau đó chúng ta làm gì? 820 00:41:06,650 --> 00:41:07,590 >> ĐỐI TƯỢNG: Quay trở lại thực sự. 821 00:41:07,590 --> 00:41:08,530 >> JASON Hirschhorn: Great. 822 00:41:08,530 --> 00:41:16,890 Vì vậy, nếu tôi là tôi - 823 00:41:16,890 --> 00:41:17,400 oh, chúng đều được gọi là tôi. 824 00:41:17,400 --> 00:41:18,470 Mà được khó hiểu. 825 00:41:18,470 --> 00:41:23,830 Nhưng nếu tôi là tôi trở thành sự thật. 826 00:41:23,830 --> 00:41:25,620 Đó có thể là tiếp theo Điều chúng ta nên làm. 827 00:41:25,620 --> 00:41:27,300 Có ý nghĩa. 828 00:41:27,300 --> 00:41:30,610 >> OK, bây giờ chúng tôi đã không thực hiện đệ quy của chúng tôi gọi nào, tuy nhiên, vì một đệ quy 829 00:41:30,610 --> 00:41:32,300 cuộc gọi sẽ gọi chức năng này một lần nữa. 830 00:41:32,300 --> 00:41:41,460 Vì vậy, những gì nên tiếp theo dòng giả được? 831 00:41:41,460 --> 00:41:42,730 Anna. 832 00:41:42,730 --> 00:41:43,980 >> ĐỐI TƯỢNG: Các bên trái. 833 00:41:43,980 --> 00:41:47,040 834 00:41:47,040 --> 00:41:47,590 >> JASON Hirschhorn: Phải cụ thể, mặc dù. 835 00:41:47,590 --> 00:41:50,600 Đây là một cây tìm kiếm nhị phân, vì vậy những gì không kiểm tra phía bên trái đòi hỏi? 836 00:41:50,600 --> 00:41:51,890 >> ĐỐI TƯỢNG: Vì vậy, nút - 837 00:41:51,890 --> 00:41:53,342 Tôi xin lỗi, root. 838 00:41:53,342 --> 00:41:55,306 Và sau đó mũi tên trái. 839 00:41:55,306 --> 00:41:59,234 840 00:41:59,234 --> 00:42:00,720 Nút, nút, xin lỗi. 841 00:42:00,720 --> 00:42:01,978 Tôi không đọc nó đúng cách. 842 00:42:01,978 --> 00:42:05,700 Nó được gọi là nút, phải không? 843 00:42:05,700 --> 00:42:09,270 >> JASON Hirschhorn: Được gọi là gốc trong đó chức năng, nhưng một trong hai cách. 844 00:42:09,270 --> 00:42:10,925 Phía bên trái - yeah? 845 00:42:10,925 --> 00:42:13,780 >> ĐỐI TƯỢNG: Nếu nó không bằng i, sau đó chúng tôi sẽ gọi 846 00:42:13,780 --> 00:42:15,130 chức năng một lần nữa? 847 00:42:15,130 --> 00:42:15,490 >> JASON Hirschhorn: Đúng vậy. 848 00:42:15,490 --> 00:42:17,870 Nếu nó không bằng tôi, chúng ta sẽ để gọi chức năng một lần nữa. 849 00:42:17,870 --> 00:42:21,435 Nhưng những gì bên trong những cây chúng ta sẽ để gọi chức năng một lần nữa? 850 00:42:21,435 --> 00:42:22,685 >> ĐỐI TƯỢNG: Ở phía bên trái. 851 00:42:22,685 --> 00:42:25,932 852 00:42:25,932 --> 00:42:27,670 >> JASON Hirschhorn: Chúng tôi không phải luôn luôn sẽ gọi nó là bên trái, nếu nó 853 00:42:27,670 --> 00:42:29,190 không bằng nó. 854 00:42:29,190 --> 00:42:29,610 >> ĐỐI TƯỢNG: Ồ, xin lỗi. 855 00:42:29,610 --> 00:42:31,200 Kêu gọi các bên phải. 856 00:42:31,200 --> 00:42:33,680 >> JASON Hirschhorn: Chúng tôi muốn biết đặc biệt, mặc dù - nhớ, trong một 857 00:42:33,680 --> 00:42:37,700 cây tìm kiếm nhị phân, tất cả mọi thứ để phía bên tay trái là nhỏ hơn. 858 00:42:37,700 --> 00:42:40,460 Tất cả mọi thứ bên phải phía bên tay lớn. 859 00:42:40,460 --> 00:42:43,990 Vì vậy, nó chỉ là không - yeah, đi trước. 860 00:42:43,990 --> 00:42:46,805 >> ĐỐI TƯỢNG: Nếu nó ít hơn tôi, sau đó - 861 00:42:46,805 --> 00:42:52,130 862 00:42:52,130 --> 00:42:53,380 nếu nó ở bên trái - 863 00:42:53,380 --> 00:42:56,160 864 00:42:56,160 --> 00:42:58,606 >> JASON Hirschhorn: Vì vậy, nếu ri là ít hơn - 865 00:42:58,606 --> 00:43:01,854 866 00:43:01,854 --> 00:43:09,110 do đó, nếu số lượng của chúng tôi ít hơn tôi, những gì bên chúng ta muốn đi đến? 867 00:43:09,110 --> 00:43:15,120 >> ĐỐI TƯỢNG: Chúng tôi muốn đi về phía bên phải. 868 00:43:15,120 --> 00:43:16,250 >> JASON Hirschhorn: Chúng tôi muốn đi - 869 00:43:16,250 --> 00:43:19,210 hãy để tôi vẽ một cái cây nhanh chóng. 870 00:43:19,210 --> 00:43:23,850 Nếu đây là 5, đây sẽ là 3. 871 00:43:23,850 --> 00:43:29,410 Vì vậy, nếu ri là ít hơn năm, những gì bên nào chúng ta muốn đến? 872 00:43:29,410 --> 00:43:30,390 >> ĐỐI TƯỢNG: Xin lỗi, những gì? 873 00:43:30,390 --> 00:43:33,190 >> JASON Hirschhorn: số của chúng tôi là ít hơn số lượng chúng tôi 874 00:43:33,190 --> 00:43:34,710 xem ngay bây giờ. 875 00:43:34,710 --> 00:43:35,890 >> ĐỐI TƯỢNG: Oh, sau đó chúng tôi muốn đi về phía bên trái. 876 00:43:35,890 --> 00:43:36,240 Yeah. 877 00:43:36,240 --> 00:43:36,920 Xin lôi. 878 00:43:36,920 --> 00:43:37,230 >> JASON Hirschhorn: Chính xác. 879 00:43:37,230 --> 00:43:38,480 Không phải lo lắng. 880 00:43:38,480 --> 00:43:41,020 Trong cây tìm kiếm nhị phân, tất cả mọi thứ thấp hơn là bên trái, 881 00:43:41,020 --> 00:43:42,110 lớn hơn là bên phải. 882 00:43:42,110 --> 00:43:46,700 Vì vậy, nếu số lượng của chúng tôi là ít hơn i chúng tôi đang kiểm tra - 883 00:43:46,700 --> 00:43:48,790 bởi vì bạn nhìn thấy trong nút, nó có một i - 884 00:43:48,790 --> 00:43:50,040 sau đó bạn muốn đi bên trái. 885 00:43:50,040 --> 00:43:55,480 886 00:43:55,480 --> 00:43:56,720 >> Và đây là một điều dễ dàng. 887 00:43:56,720 --> 00:44:01,700 Đó là những gì các dòng khác của giả chúng ta cần phải viết? 888 00:44:01,700 --> 00:44:02,910 Carlos? 889 00:44:02,910 --> 00:44:05,970 >> ĐỐI TƯỢNG: Cùng một điều, bạn chỉ cần chuyển đổi nó vào một dấu hiệu lớn hơn 890 00:44:05,970 --> 00:44:07,420 và đi về bên phải. 891 00:44:07,420 --> 00:44:08,350 >> JASON Hirschhorn: Có thể bạn nói thêm một lần nữa? 892 00:44:08,350 --> 00:44:11,640 >> ĐỐI TƯỢNG: Nếu số lượng của chúng tôi lớn hơn tôi, đi về bên phải. 893 00:44:11,640 --> 00:44:24,900 894 00:44:24,900 --> 00:44:26,690 >> JASON Hirschhorn: Tuyệt vời công việc trên giả. 895 00:44:26,690 --> 00:44:28,700 Hãy để chúng tôi làm điều này trong mã thực. 896 00:44:28,700 --> 00:44:33,280 Và một lần nữa, điều này sẽ giả có thể giúp bạn có được, bởi vì nó 897 00:44:33,280 --> 00:44:35,480 chính xác, 50% câu hỏi này. 898 00:44:35,480 --> 00:44:39,720 Nhưng giả này cũng dịch một một, về cơ bản, thành mã. 899 00:44:39,720 --> 00:44:44,380 >> Vì vậy, chúng ta hãy làm điều này trong C. Ai có thể cho tôi dòng đầu tiên của mã? 900 00:44:44,380 --> 00:44:48,390 Trên thực tế, lần đầu tiên, trước khi tôi làm rằng, hãy để tôi kéo hơn - 901 00:44:48,390 --> 00:44:49,260 >> ĐỐI TƯỢNG: Tôi có một câu hỏi. 902 00:44:49,260 --> 00:44:52,430 Tại sao anh lại thụt vào đường tôi đã cho bạn? 903 00:44:52,430 --> 00:44:54,160 >> JASON Hirschhorn: Bởi vì Tôi không thể viết. 904 00:44:54,160 --> 00:44:55,240 Tôi không biết. 905 00:44:55,240 --> 00:44:55,650 Bạn nói đúng. 906 00:44:55,650 --> 00:44:57,780 Dòng nên được ở đó. 907 00:44:57,780 --> 00:45:11,600 908 00:45:11,600 --> 00:45:14,480 >> OK, đây là chức năng của chúng tôi. 909 00:45:14,480 --> 00:45:18,090 Và cho tôi kéo qua, cũng được, định nghĩa của chúng ta về một nút. 910 00:45:18,090 --> 00:45:23,320 911 00:45:23,320 --> 00:45:27,180 Điều gì xảy ra nếu chúng ta không viết typedef? 912 00:45:27,180 --> 00:45:30,240 Không ai biết? 913 00:45:30,240 --> 00:45:32,570 >> ĐỐI TƯỢNG: Nó sẽ không biên dịch. 914 00:45:32,570 --> 00:45:33,860 >> JASON Hirschhorn: Nó sẽ biên dịch, yeah. 915 00:45:33,860 --> 00:45:37,120 >> ĐỐI TƯỢNG: Nó sẽ chỉ cần khai báo một Ví dụ thay vì làm cho nó một mới 916 00:45:37,120 --> 00:45:39,840 loại bạn có thể khai báo nhiều các trường hợp? 917 00:45:39,840 --> 00:45:41,700 >> JASON Hirschhorn: Vì vậy, nó sẽ không biết - nó sẽ không 918 00:45:41,700 --> 00:45:43,120 chỉ cần khai báo một loại. 919 00:45:43,120 --> 00:45:46,150 Bạn vẫn có thể làm cho rất nhiều các nút. 920 00:45:46,150 --> 00:45:48,070 >> ĐỐI TƯỢNG: Nhưng không, chúng ta phải viết cấu trúc nút mỗi lần? 921 00:45:48,070 --> 00:45:48,640 >> JASON Hirschhorn: Đúng vậy. 922 00:45:48,640 --> 00:45:50,960 Bạn sẽ phải viết struct node mọi thời gian, thay vì chỉ nút. 923 00:45:50,960 --> 00:45:55,270 Nhưng với typedef, bạn có thể chỉ viết nút mỗi lần duy nhất. 924 00:45:55,270 --> 00:45:58,240 OK, người đã không được - yeah, Avica. 925 00:45:58,240 --> 00:46:01,520 >> ĐỐI TƯỢNG: Nếu gốc bằng bình đẳng null, trả về false. 926 00:46:01,520 --> 00:46:07,130 927 00:46:07,130 --> 00:46:09,490 >> JASON Hirschhorn: Great, và đó là trường hợp cơ sở của chúng tôi. 928 00:46:09,490 --> 00:46:11,200 Dòng tiếp theo của mã. 929 00:46:11,200 --> 00:46:13,999 Một người nào đó đã không đưa ra tôi một dòng mã nào? 930 00:46:13,999 --> 00:46:14,945 Yeah. 931 00:46:14,945 --> 00:46:23,360 >> ĐỐI TƯỢNG: Root mũi tên tôi bằng bằng tôi. 932 00:46:23,360 --> 00:46:27,260 Sau đó trở thành sự thật. 933 00:46:27,260 --> 00:46:29,162 >> JASON Hirschhorn: Great. 934 00:46:29,162 --> 00:46:32,048 Dòng tiếp theo? 935 00:46:32,048 --> 00:46:32,790 Yeah. 936 00:46:32,790 --> 00:46:34,010 Một người nào khác? 937 00:46:34,010 --> 00:46:36,774 Và sau đó bạn có thể đi tiếp theo. 938 00:46:36,774 --> 00:46:44,820 >> ĐỐI TƯỢNG: Khác nếu gốc mũi tên i nhỏ hơn tôi trở lại 939 00:46:44,820 --> 00:46:47,737 chức năng được gọi là root find - 940 00:46:47,737 --> 00:46:50,611 >> JASON Hirschhorn: Xin lỗi. 941 00:46:50,611 --> 00:46:56,272 >> ĐỐI TƯỢNG: Quay lại tìm gốc chỉ để lại dấu phẩy tôi. 942 00:46:56,272 --> 00:47:01,760 943 00:47:01,760 --> 00:47:08,440 >> JASON Hirschhorn: Vì vậy, nếu ri lớn hơn điều trong cây, chúng tôi muốn 944 00:47:08,440 --> 00:47:09,573 đi bên trái? 945 00:47:09,573 --> 00:47:11,790 >> ĐỐI TƯỢNG: Không, tôi đã có chuyển. 946 00:47:11,790 --> 00:47:13,040 >> JASON Hirschhorn: Cái nào? 947 00:47:13,040 --> 00:47:16,310 948 00:47:16,310 --> 00:47:16,950 >> ĐỐI TƯỢNG: Không, yeah. 949 00:47:16,950 --> 00:47:19,050 Tôi có một ít hơn so với đăng ở đó. 950 00:47:19,050 --> 00:47:22,890 >> JASON Hirschhorn: Đúng thế, nếu ri là ít hơn những gì trong thư mục gốc - 951 00:47:22,890 --> 00:47:25,660 gốc hiện tại của chúng tôi - sau đó chúng tôi muốn đi bên trái. 952 00:47:25,660 --> 00:47:26,960 Và dòng cuối cùng là những gì, bạn? 953 00:47:26,960 --> 00:47:30,930 >> ĐỐI TƯỢNG: Về cơ bản cùng một điều, ngoại trừ chuyển đổi lớn hơn hoặc 954 00:47:30,930 --> 00:47:34,690 bằng ít hơn và trái sang phải. 955 00:47:34,690 --> 00:47:43,590 956 00:47:43,590 --> 00:47:43,680 >> JASON Hirschhorn: Tuyệt vời. 957 00:47:43,680 --> 00:47:48,430 Không ai có bất kỳ câu hỏi về điều này? 958 00:47:48,430 --> 00:47:52,560 Vì vậy, một số những thứ khác mà có thể đã được chính xác là 959 00:47:52,560 --> 00:47:53,810 có thể là-ltiff. 960 00:47:53,810 --> 00:47:56,520 961 00:47:56,520 --> 00:47:59,520 Đoán, về mặt kỹ thuật, không có những thực sự cũng cần phải-ltiff. 962 00:47:59,520 --> 00:48:00,950 >> Ngoài ra, có chỉ có thể là một trường hợp ở đây. 963 00:48:00,950 --> 00:48:02,380 Vì vậy, đó có thể là trường hợp cuối cùng của bạn. 964 00:48:02,380 --> 00:48:04,000 Bạn thậm chí không cần điều đó-ltiff. 965 00:48:04,000 --> 00:48:06,160 Nhưng có lẽ tốt để viết nó, để được rõ ràng. 966 00:48:06,160 --> 00:48:06,660 Yeah. 967 00:48:06,660 --> 00:48:09,200 >> ĐỐI TƯỢNG: Vì vậy, bạn không nghĩ rằng các bài kiểm tra - nếu chúng ta thực hiện sai sót, ví dụ, 968 00:48:09,200 --> 00:48:11,725 trong cú pháp - 969 00:48:11,725 --> 00:48:13,990 lỗi cú pháp ít - 970 00:48:13,990 --> 00:48:17,810 làm thế nào mà có được thực hiện trong các bài kiểm tra? 971 00:48:17,810 --> 00:48:21,300 >> JASON Hirschhorn: Nói chung trên các bài kiểm tra, lỗi cú pháp nhỏ hay nhỏ 972 00:48:21,300 --> 00:48:24,010 lỗi phong cách không bị mất bạn điểm. 973 00:48:24,010 --> 00:48:26,610 Vì vậy, nếu bạn quên một dấu chấm phẩy ở đây, nó sẽ là OK. 974 00:48:26,610 --> 00:48:30,290 Nếu bạn quên đóng ngoặc này, đó sẽ là OK. 975 00:48:30,290 --> 00:48:34,880 >> Lỗi cú pháp rất lớn làm thay đổi ý nghĩa chức năng của mã của bạn 976 00:48:34,880 --> 00:48:37,600 đáng kể, bạn có thể nhận được đưa ra điểm. 977 00:48:37,600 --> 00:48:40,330 Hoặc thường, chỉ cần phân loại bạn hay không của bạn 978 00:48:40,330 --> 00:48:42,150 chức năng mã, thậm chí - 979 00:48:42,150 --> 00:48:44,830 không thiết kế của nó rất nhiều, và không phải phong cách của nó. 980 00:48:44,830 --> 00:48:50,780 981 00:48:50,780 --> 00:48:55,480 >> Bây giờ chúng ta lặp đi lặp lại một mã phiên bản của find. 982 00:48:55,480 --> 00:49:00,400 983 00:49:00,400 --> 00:49:03,450 Vì vậy, nó sẽ là khá giống nhau, nhưng có chắc chắn sẽ 984 00:49:03,450 --> 00:49:06,250 một số khác biệt quan trọng. 985 00:49:06,250 --> 00:49:09,160 Tuy nhiên, giả của chúng tôi có lẽ có thể đi - 986 00:49:09,160 --> 00:49:11,610 chúng tôi vẫn có thể mất một dòng của giả và tìm ra những gì 987 00:49:11,610 --> 00:49:14,160 dòng là trong trường hợp này. 988 00:49:14,160 --> 00:49:18,010 >> Vì vậy, trong một phiên bản lặp đi lặp lại, những gì Bạn nghĩ, Julia, nên 989 00:49:18,010 --> 00:49:19,260 là dòng đầu tiên? 990 00:49:19,260 --> 00:49:23,100 991 00:49:23,100 --> 00:49:26,920 >> ĐỐI TƯỢNG: Một lần nữa, trong boolean lặp đi lặp lại, bạn cần phải thiết lập một vòng lặp, phải không? 992 00:49:26,920 --> 00:49:27,660 >> JASON Hirschhorn: OK. 993 00:49:27,660 --> 00:49:38,480 >> ĐỐI TƯỢNG: Vì vậy, như, k, cho x bằng 0, x là ít hơn tôi. 994 00:49:38,480 --> 00:49:42,260 Hoặc không, x là thấp hơn kích thước của cây. 995 00:49:42,260 --> 00:49:42,760 >> JASON Hirschhorn: Các cây. 996 00:49:42,760 --> 00:49:46,660 Vì vậy, chúng tôi không thực sự biết kích thước của cây, và chúng tôi không thực sự biết 997 00:49:46,660 --> 00:49:48,900 bao nhiêu lần chúng ta có thể đi, vì vậy những gì là một loại khác nhau của vòng lặp đó có thể là 998 00:49:48,900 --> 00:49:50,150 tốt hơn trong trường hợp này? 999 00:49:50,150 --> 00:49:53,250 1000 00:49:53,250 --> 00:49:55,244 >> ĐỐI TƯỢNG: Nếu khác? 1001 00:49:55,244 --> 00:49:57,070 >> JASON Hirschhorn: Nếu khác không thể là một vòng lặp. 1002 00:49:57,070 --> 00:49:58,935 Vì vậy, một loại vòng lặp chúng ta có thể chỉ là những gì đi cho đến khi một số trường hợp được đáp ứng? 1003 00:49:58,935 --> 00:50:07,250 1004 00:50:07,250 --> 00:50:11,560 Chỉ có các loại khác của vòng lặp là những gì trong C bên cạnh một vòng lặp? 1005 00:50:11,560 --> 00:50:11,930 >> ĐỐI TƯỢNG: Trong khi. 1006 00:50:11,930 --> 00:50:13,380 >> JASON Hirschhorn: Trong khi, chính xác. 1007 00:50:13,380 --> 00:50:16,430 Trong một vòng lặp trong khi, không cần phải biết làm thế nào - 1008 00:50:16,430 --> 00:50:18,450 một vòng lặp trong khi và cho vòng lặp có thể làm chính xác điều tương tự, nhưng những điều tốt đẹp 1009 00:50:18,450 --> 00:50:21,500 về một vòng lặp trong khi là chúng ta không cần biết làm thế nào lớn cây của chúng tôi là. 1010 00:50:21,500 --> 00:50:23,060 Vì vậy, chúng ta sẽ đi đến những gì? 1011 00:50:23,060 --> 00:50:25,880 1012 00:50:25,880 --> 00:50:28,032 >> ĐỐI TƯỢNG: Cho đến khi nó bằng kích thước của - 1013 00:50:28,032 --> 00:50:32,320 >> JASON Hirschhorn: Vâng, nó rất tương tự như trường hợp đệ quy của chúng tôi. 1014 00:50:32,320 --> 00:50:33,360 Vì vậy, - 1015 00:50:33,360 --> 00:50:36,470 >> ĐỐI TƯỢNG: Trong khi gốc tôi không làm tôi bình đẳng. 1016 00:50:36,470 --> 00:50:37,620 >> JASON Hirschhorn: Đó là thực sự gần gũi. 1017 00:50:37,620 --> 00:50:39,430 Trong khi gốc i - 1018 00:50:39,430 --> 00:50:40,610 chúng ta hãy thử nó. 1019 00:50:40,610 --> 00:50:41,180 Tôi không nghĩ rằng [không nghe được] 1020 00:50:41,180 --> 00:50:43,026 nơi mà tôi có gốc không bằng tôi. 1021 00:50:43,026 --> 00:50:47,380 1022 00:50:47,380 --> 00:50:49,460 Chúng ta có thể cần phải thay đổi nó trong một chút chút, nhưng mà âm thanh như nó đẹp 1023 00:50:49,460 --> 00:50:50,160 tốt, cho bây giờ. 1024 00:50:50,160 --> 00:50:51,710 Vì vậy, chúng tôi sẽ làm điều đó. 1025 00:50:51,710 --> 00:50:55,660 >> Ngoài ra, hãy nhớ rằng, chúng ta không thể giả định mỗi câu hỏi. 1026 00:50:55,660 --> 00:50:57,880 Bạn không giả định rằng gốc sẽ không null. 1027 00:50:57,880 --> 00:51:01,914 Vậy điều gì làm bạn nghĩ rằng rất Điều đầu tiên chúng ta nên làm là? 1028 00:51:01,914 --> 00:51:02,770 >> ĐỐI TƯỢNG: Chỉ cần làm tương tự điều như trước. 1029 00:51:02,770 --> 00:51:05,260 Nếu thư mục gốc bằng bình đẳng null, trả về false. 1030 00:51:05,260 --> 00:51:11,030 1031 00:51:11,030 --> 00:51:12,130 >> JASON Hirschhorn: Great. 1032 00:51:12,130 --> 00:51:13,820 Vì vậy, nó có thể là vô giá trị. 1033 00:51:13,820 --> 00:51:15,810 Vì vậy, chúng tôi muốn được thoát khỏi của nó ngay lập tức. 1034 00:51:15,810 --> 00:51:19,560 Và sau đó chúng ta sẽ kiểm tra xem gốc tôi không tôi không bằng nhau. 1035 00:51:19,560 --> 00:51:24,480 Vì vậy, nói rằng chúng ta đang tìm kiếm trong cây này 3, rễ tôi không bằng tôi, bây giờ 1036 00:51:24,480 --> 00:51:25,950 chúng ta đang ở trong vòng lặp trong khi của chúng tôi. 1037 00:51:25,950 --> 00:51:27,500 Những gì chúng ta muốn làm gì? 1038 00:51:27,500 --> 00:51:32,320 1039 00:51:32,320 --> 00:51:35,430 Và một lần nữa, nó sẽ được khá tương tự như phiên bản đệ quy của chúng tôi. 1040 00:51:35,430 --> 00:51:36,230 Yeah. 1041 00:51:36,230 --> 00:51:40,470 >> ĐỐI TƯỢNG: Vì vậy, bạn muốn để lặp, hoặc tiếp tục đi xuống cây miễn là 1042 00:51:40,470 --> 00:51:42,400 gốc không phải là bằng null. 1043 00:51:42,400 --> 00:51:45,120 1044 00:51:45,120 --> 00:51:46,640 >> JASON Hirschhorn: Miễn là gốc không phải là bằng vô giá trị? 1045 00:51:46,640 --> 00:51:50,200 >> ĐỐI TƯỢNG: Các dấu gạch ngang gốc tôi không bằng null. 1046 00:51:50,200 --> 00:51:51,220 Chỉ gốc, yeah. 1047 00:51:51,220 --> 00:51:52,920 Như một lâu như là gốc là không bằng null. 1048 00:51:52,920 --> 00:51:54,240 >> JASON Hirschhorn: Vì vậy, bạn muốn thay đổi này vào thư mục gốc 1049 00:51:54,240 --> 00:51:56,590 không vô không bằng nhau? 1050 00:51:56,590 --> 00:51:59,020 >> ĐỐI TƯỢNG: Vâng. 1051 00:51:59,020 --> 00:52:00,800 >> ĐỐI TƯỢNG: Chúng tôi có thể kết hợp này, phải không? 1052 00:52:00,800 --> 00:52:02,990 Chúng tôi không cần nếu ban đầu. 1053 00:52:02,990 --> 00:52:05,180 >> JASON Hirschhorn: OK, vì vậy nếu chúng ta đừng - 1054 00:52:05,180 --> 00:52:08,140 nếu chúng ta kết hợp chúng, vì vậy chúng tôi đang đi làm trong khi gốc không vô không bằng nhau, và 1055 00:52:08,140 --> 00:52:10,800 nếu thư mục gốc sẽ xảy ra là null ở bắt đầu, chúng ta làm gì ở đây? 1056 00:52:10,800 --> 00:52:11,450 >> ĐỐI TƯỢNG: Trở về sai. 1057 00:52:11,450 --> 00:52:12,730 >> JASON Hirschhorn: Great. 1058 00:52:12,730 --> 00:52:14,110 Vì vậy, cả hai cách có thể sẽ làm việc. 1059 00:52:14,110 --> 00:52:15,645 Đây là một cách khác nhau, và kết hợp nó. 1060 00:52:15,645 --> 00:52:18,950 Nhưng một lần nữa, nếu bạn đã làm một trong hai cách, chúng tôi sẽ không cất cánh thiết kế 1061 00:52:18,950 --> 00:52:19,800 chỉ trên các bài kiểm tra. 1062 00:52:19,800 --> 00:52:21,020 Nhưng điều này có vẻ tốt. 1063 00:52:21,020 --> 00:52:23,940 >> Vì vậy, trong khi gốc không bằng null, những gì là lần đầu tiên 1064 00:52:23,940 --> 00:52:25,400 Điều chúng tôi muốn kiểm tra? 1065 00:52:25,400 --> 00:52:26,330 Người khác? 1066 00:52:26,330 --> 00:52:29,720 Null, điều đầu tiên là gì? 1067 00:52:29,720 --> 00:52:32,850 >> ĐỐI TƯỢNG: Nếu ri là ít hơn - 1068 00:52:32,850 --> 00:52:36,140 oh, tôi đoán, nếu chúng ta đã tìm thấy nó trong thư mục gốc. 1069 00:52:36,140 --> 00:52:40,830 Vì vậy, nếu gốc mũi tên tôi bằng i - 1070 00:52:40,830 --> 00:52:40,990 >> JASON Hirschhorn: Xin lỗi? 1071 00:52:40,990 --> 00:52:45,840 >> ĐỐI TƯỢNG: Nếu gốc mũi tên i bằng bằng i - 1072 00:52:45,840 --> 00:52:47,090 >> JASON Hirschhorn: Chúng ta phải làm gì? 1073 00:52:47,090 --> 00:52:50,300 1074 00:52:50,300 --> 00:52:51,550 >> ĐỐI TƯỢNG: Quay trở lại thực sự. 1075 00:52:51,550 --> 00:52:58,850 1076 00:52:58,850 --> 00:52:59,280 >> JASON Hirschhorn: Great. 1077 00:52:59,280 --> 00:53:00,530 Và những gì tiếp theo? 1078 00:53:00,530 --> 00:53:04,510 1079 00:53:04,510 --> 00:53:06,843 Jeff, dòng tiếp theo của mã là gì? 1080 00:53:06,843 --> 00:53:16,190 >> ĐỐI TƯỢNG: Nếu tôi là ít hơn gốc mũi tên i, sau đó gốc rễ bằng mũi tên trái. 1081 00:53:16,190 --> 00:53:21,550 >> JASON Hirschhorn: Root bình đẳng gốc mũi tên trái. 1082 00:53:21,550 --> 00:53:24,530 Vì vậy, đó có thể là lớn nhất khác biệt ở đây trong lặp đi lặp lại này 1083 00:53:24,530 --> 00:53:26,600 phiên bản như trái ngược với các phiên bản đệ quy. 1084 00:53:26,600 --> 00:53:28,970 Phiên bản đệ quy, chúng tôi gọi hàm một lần nữa. 1085 00:53:28,970 --> 00:53:32,640 Chúng tôi sẽ cập nhật gốc khi chúng ta gọi là các chức năng mới. 1086 00:53:32,640 --> 00:53:34,170 Ở đây chúng tôi không gọi một chức năng mới. 1087 00:53:34,170 --> 00:53:37,610 Chúng tôi chỉ đơn giản là chỉ cần cập nhật gốc trong chức năng này. 1088 00:53:37,610 --> 00:53:38,880 Đó là tuyệt vời. 1089 00:53:38,880 --> 00:53:40,730 Và dòng cuối cùng của mã là gì? 1090 00:53:40,730 --> 00:53:43,950 1091 00:53:43,950 --> 00:53:44,880 Yeah, Mario? 1092 00:53:44,880 --> 00:53:48,290 >> ĐỐI TƯỢNG: bình đẳng gốc khac gốc mũi tên bên phải. 1093 00:53:48,290 --> 00:53:49,492 >> JASON Hirschhorn: Xin lỗi? 1094 00:53:49,492 --> 00:53:52,340 >> ĐỐI TƯỢNG: Root bình đẳng gốc mũi tên bên phải. 1095 00:53:52,340 --> 00:53:55,590 1096 00:53:55,590 --> 00:53:57,140 >> JASON Hirschhorn: Ông có thể cũng viết một cái gì đó như thế này? 1097 00:53:57,140 --> 00:54:02,786 1098 00:54:02,786 --> 00:54:03,890 >> ĐỐI TƯỢNG: Tôi không có ý tưởng. 1099 00:54:03,890 --> 00:54:05,140 >> JASON Hirschhorn: Bạn có thể không. 1100 00:54:05,140 --> 00:54:07,302 1101 00:54:07,302 --> 00:54:08,270 Bạn không thể làm bình đẳng cộng. 1102 00:54:08,270 --> 00:54:10,780 OK, vì vậy điều này có vẻ tốt. 1103 00:54:10,780 --> 00:54:13,620 Tại sao chúng ta không làm điều đó để làm sạch nó lên. 1104 00:54:13,620 --> 00:54:15,220 Điều này sẽ rất tốt, và điều này sẽ làm việc. 1105 00:54:15,220 --> 00:54:16,920 Và chúng tôi sẽ thoát ra khỏi. 1106 00:54:16,920 --> 00:54:21,460 >> Nếu trái gốc là null hoặc gốc ngay là vô giá trị, chúng tôi sẽ đưa ra ở đây. 1107 00:54:21,460 --> 00:54:22,470 Gốc sẽ bằng null. 1108 00:54:22,470 --> 00:54:24,270 Chúng tôi muốn thoát ra khỏi vòng lặp của chúng tôi, và chúng tôi trả về false. 1109 00:54:24,270 --> 00:54:26,280 Vì vậy, khi chúng ta thoát ra khỏi vòng lặp, chúng tôi trả về false. 1110 00:54:26,280 --> 00:54:29,520 1111 00:54:29,520 --> 00:54:32,793 >> Và một lần nữa, một vòng lặp trong khi đã được hoàn hảo ở đây bởi vì chúng tôi không biết làm thế nào 1112 00:54:32,793 --> 00:54:33,850 lớn cây của chúng tôi là. 1113 00:54:33,850 --> 00:54:36,460 Chúng tôi đã cố gắng để viết cho vòng lặp, nhưng chúng tôi nhận ra bạn đã có để tìm ra cách 1114 00:54:36,460 --> 00:54:37,410 lớn đó là trước thời hạn. 1115 00:54:37,410 --> 00:54:38,720 Yeah. 1116 00:54:38,720 --> 00:54:41,790 >> ĐỐI TƯỢNG: Nếu đây không phải là một nhị phân cây tìm kiếm, nó sẽ được thực toán học-y 1117 00:54:41,790 --> 00:54:44,220 để viết nó lặp đi lặp lại, phải không? 1118 00:54:44,220 --> 00:54:47,170 Như, nếu đó là một cây, nhưng không nhất thiết - 1119 00:54:47,170 --> 00:54:49,730 vì vậy nó không hoàn toàn nhỏ bên trái, và tất cả lớn hơn bên phải. 1120 00:54:49,730 --> 00:54:52,540 Nó sẽ thực sự khó khăn để lặp lại nó, phải không? 1121 00:54:52,540 --> 00:54:55,720 Chúng tôi phải tiết kiệm những gì đã được trước đó trên trong cây và quay trở lại, 1122 00:54:55,720 --> 00:54:56,970 và các công cụ như thế. 1123 00:54:56,970 --> 00:54:59,690 1124 00:54:59,690 --> 00:55:02,010 >> JASON Hirschhorn: Nếu nó không phải là một nhị phân cây tìm kiếm, nếu nó chỉ là một 1125 00:55:02,010 --> 00:55:04,740 cây và những thứ không sắp xếp như thế này - 1126 00:55:04,740 --> 00:55:07,440 và chúng tôi nhận ra trước khi Anna đã giúp chúng tôi rằng làm cho nó 1127 00:55:07,440 --> 00:55:08,800 sắp xếp giúp chúng tôi rất nhiều - 1128 00:55:08,800 --> 00:55:12,610 chúng ta cần phải, có, luôn luôn tiết kiệm nơi chúng tôi trước đây. 1129 00:55:12,610 --> 00:55:14,430 Nhưng có thể có rất nhiều nơi chúng tôi đã previouslys. 1130 00:55:14,430 --> 00:55:17,730 Có thể có rất nhiều các nút cha mẹ. 1131 00:55:17,730 --> 00:55:22,530 >> Có lẽ là cách tốt nhất để làm điều đó sẽ được tiếp tục đẩy mạnh việc lên một số 1132 00:55:22,530 --> 00:55:24,170 loại chồng hoặc hàng đợi. 1133 00:55:24,170 --> 00:55:26,030 Bạn sẽ không bao giờ cần phải mã này bởi vì đó là một vấn đề khó khăn. 1134 00:55:26,030 --> 00:55:30,820 Nhưng bạn đẩy một số điều vào một chồng hoặc xếp hàng và sau đó bật chúng ra, và 1135 00:55:30,820 --> 00:55:31,890 sau đó đánh giá chúng. 1136 00:55:31,890 --> 00:55:34,200 >> Và sau đó có một số điều khác mà bạn đang thực sự đặt các nút, và 1137 00:55:34,200 --> 00:55:36,090 sau đó tạo ra điều đó, và sau đó tìm kiếm thông qua đó. 1138 00:55:36,090 --> 00:55:38,700 Đó có thể là cách tốt nhất để làm điều đó. 1139 00:55:38,700 --> 00:55:42,410 OK, bất kỳ câu hỏi nào về vấn đề này? 1140 00:55:42,410 --> 00:55:44,670 >> ĐỐI TƯỢNG: Đây là một lưu ý liên quan. 1141 00:55:44,670 --> 00:55:50,460 Chúng tôi sẽ phải so sánh thời gian chạy cho bảng băm, nhị phân 1142 00:55:50,460 --> 00:55:52,160 cây tìm kiếm, vân vân? 1143 00:55:52,160 --> 00:55:54,310 >> JASON Hirschhorn: Có lẽ. 1144 00:55:54,310 --> 00:55:56,150 Vì vậy, hãy làm điều đó thực sự nhanh chóng. 1145 00:55:56,150 --> 00:55:58,490 Thời gian chạy cho bảng băm - 1146 00:55:58,490 --> 00:55:59,090 những người khác là gì? 1147 00:55:59,090 --> 00:56:00,050 Cây nhị phân? 1148 00:56:00,050 --> 00:56:02,920 >> ĐỐI TƯỢNG: danh sách liên kết. 1149 00:56:02,920 --> 00:56:04,780 >> JASON Hirschhorn: OK, chúng ta hãy làm chèn. 1150 00:56:04,780 --> 00:56:09,980 O lớn chèn là gì trên một bảng băm? 1151 00:56:09,980 --> 00:56:13,080 1152 00:56:13,080 --> 00:56:15,285 Các giả định là gì bạn đang làm? 1153 00:56:15,285 --> 00:56:17,760 >> ĐỐI TƯỢNG: Bạn đang chèn vào bắt đầu của danh sách liên kết. 1154 00:56:17,760 --> 00:56:19,860 >> JASON Hirschhorn: Có lẽ là đầu tiên giả định là không có va chạm. 1155 00:56:19,860 --> 00:56:22,340 Nếu không có va chạm, sau đó thời gian chèn là một. 1156 00:56:22,340 --> 00:56:26,560 Nếu có va chạm, và bạn làm xâu chuỗi riêng biệt và chèn 1157 00:56:26,560 --> 00:56:31,880 vào đầu danh sách liên kết, sau đó chèn cũng là hằng số. 1158 00:56:31,880 --> 00:56:34,700 >> Nếu bạn đang làm một bảng băm nhưng bạn có một phương pháp khác nhau đối phó 1159 00:56:34,700 --> 00:56:36,040 với va chạm, những gì một phương pháp khác nhau? 1160 00:56:36,040 --> 00:56:41,580 1161 00:56:41,580 --> 00:56:42,960 Có gì là một phương pháp khác nhau đối phó với 1162 00:56:42,960 --> 00:56:44,205 va chạm trong một bảng băm? 1163 00:56:44,205 --> 00:56:44,915 >> ĐỐI TƯỢNG: lập trình tuyến tính. 1164 00:56:44,915 --> 00:56:45,540 >> JASON Hirschhorn: lập trình tuyến tính. 1165 00:56:45,540 --> 00:56:47,770 Vì vậy, chúng ta sẽ tiếp tục tìm kiếm cho vị trí mở tiếp theo. 1166 00:56:47,770 --> 00:56:50,390 Đó không phải là thời điểm chèn liên tục. 1167 00:56:50,390 --> 00:56:52,266 Bạn có thể phải đi qua toàn bộ bảng, do đó 1168 00:56:52,266 --> 00:56:53,936 có thể là O lớn của n. 1169 00:56:53,936 --> 00:56:54,740 Yeah. 1170 00:56:54,740 --> 00:56:57,690 >> ĐỐI TƯỢNG: Nếu không chỉ chaining? 1171 00:56:57,690 --> 00:57:00,160 >> JASON Hirschhorn: Chúng tôi đã làm chain riêng biệt. 1172 00:57:00,160 --> 00:57:00,720 Đó là người đầu tiên. 1173 00:57:00,720 --> 00:57:01,560 Đó là những gì các danh sách liên kết. 1174 00:57:01,560 --> 00:57:03,720 Tên ưa thích là xâu chuỗi riêng biệt. 1175 00:57:03,720 --> 00:57:06,880 Nó có thể là bất kỳ loại cấu trúc danh sách chúng tôi xảy ra để làm trong danh sách liên kết. 1176 00:57:06,880 --> 00:57:10,490 >> Vì vậy, một lần nữa, chèn vào một bảng băm có thể là thời gian liên tục. 1177 00:57:10,490 --> 00:57:13,160 Những gì về chèn trên một hàng đợi máy xếp? 1178 00:57:13,160 --> 00:57:19,260 1179 00:57:19,260 --> 00:57:20,640 >> ĐỐI TƯỢNG: Không phải là không đổi? 1180 00:57:20,640 --> 00:57:21,530 >> JASON Hirschhorn: Đó là thời gian liên tục. 1181 00:57:21,530 --> 00:57:23,420 Bạn chỉ cần đẩy nó vào. 1182 00:57:23,420 --> 00:57:24,120 OK. 1183 00:57:24,120 --> 00:57:25,380 Chèn, những gì là những người khác? 1184 00:57:25,380 --> 00:57:27,100 Trên một thử? 1185 00:57:27,100 --> 00:57:30,252 O lớn chèn vào một thử là gì? 1186 00:57:30,252 --> 00:57:32,808 >> ĐỐI TƯỢNG: Chiều dài là không đổi. 1187 00:57:32,808 --> 00:57:34,560 Chiều dài dài nhất - 1188 00:57:34,560 --> 00:57:36,998 chiều dài của từ bạn đang chèn. 1189 00:57:36,998 --> 00:57:38,210 >> JASON Hirschhorn: Xin lỗi? 1190 00:57:38,210 --> 00:57:39,120 Chờ đợi, vì vậy tôi đã nghe thấy những gì? 1191 00:57:39,120 --> 00:57:40,260 Bạn nói - Anh nói gì? 1192 00:57:40,260 --> 00:57:41,650 Câu trả lời của bạn, Marcus là gì? 1193 00:57:41,650 --> 00:57:43,640 >> ĐỐI TƯỢNG: Chiều dài của từ bạn đang chèn trong nhân vật, 1194 00:57:43,640 --> 00:57:45,480 giả định đó là một nhân vật thử. 1195 00:57:45,480 --> 00:57:46,840 >> JASON Hirschhorn: OK, vì vậy chiều dài của từ. 1196 00:57:46,840 --> 00:57:49,500 Chúng tôi sẽ làm cho một giả định rằng đó là một chuỗi ký tự. 1197 00:57:49,500 --> 00:57:51,930 Bạn nói một cái gì đó khác nhau, mặc dù. 1198 00:57:51,930 --> 00:57:55,490 Bạn nói chiều dài từ lâu nhất. 1199 00:57:55,490 --> 00:57:57,600 >> ĐỐI TƯỢNG: Đó chỉ là liên tục, phải không? 1200 00:57:57,600 --> 00:57:58,440 >> JASON Hirschhorn: Tại sao nó là không đổi? 1201 00:57:58,440 --> 00:58:00,970 >> ĐỐI TƯỢNG: Giống như, nếu bạn sử dụng O lớn ký hiệu, sau đó nó không thay đổi based 1202 00:58:00,970 --> 00:58:04,680 về số lượng những điều mà đã có trong thử. 1203 00:58:04,680 --> 00:58:07,344 >> JASON Hirschhorn: Vì vậy, chúng tôi sẽ nói đó là thời gian liên tục. 1204 00:58:07,344 --> 00:58:11,840 Nó là chèn liên tục, và đó là bởi vì ý tưởng này - 1205 00:58:11,840 --> 00:58:14,820 chúng ta có một từ đó là 45, hoặc một từ đó là 60, mà 1206 00:58:14,820 --> 00:58:16,800 có một số không đổi. 1207 00:58:16,800 --> 00:58:21,050 Và nó sẽ chỉ được chèn trong thời gian liên tục. 1208 00:58:21,050 --> 00:58:26,060 >> Trong thực tế, mặc dù nó sẽ không phải là, rõ ràng, xảy ra trong một phần nghìn giây, 1209 00:58:26,060 --> 00:58:26,590 ví dụ. 1210 00:58:26,590 --> 00:58:28,880 Nhưng chúng ta sẽ nói O lớn là liên tục cho một thử. 1211 00:58:28,880 --> 00:58:31,330 Và đó là một trong của nó lợi thế lớn nhất. 1212 00:58:31,330 --> 00:58:33,330 >> Những gì về chèn vào một danh sách liên kết? 1213 00:58:33,330 --> 00:58:37,220 Chỉ cần một danh sách liên kết được sắp xếp chung chung? 1214 00:58:37,220 --> 00:58:37,700 Yeah. 1215 00:58:37,700 --> 00:58:38,530 >> ĐỐI TƯỢNG: Tôi có một câu hỏi. 1216 00:58:38,530 --> 00:58:42,670 Trên các kiểm tra, họ sẽ bao giờ tự hỏi chúng ta thời điểm chèn đó là bốn bước, 1217 00:58:42,670 --> 00:58:43,270 hay cái gì? 1218 00:58:43,270 --> 00:58:44,300 Hoặc là nó chỉ - 1219 00:58:44,300 --> 00:58:47,670 khi bạn nói thời điểm chèn là một, mà chỉ có nghĩa là thời gian liên tục? 1220 00:58:47,670 --> 00:58:49,770 >> JASON Hirschhorn: Vâng, họ sẽ luôn luôn hỏi, là nó O lớn của n? 1221 00:58:49,770 --> 00:58:51,440 Big O của log n? 1222 00:58:51,440 --> 00:58:53,960 N bình phương liên tục. 1223 00:58:53,960 --> 00:58:56,520 Đó là thực sự chỉ cái bạn cần biết. 1224 00:58:56,520 --> 00:58:58,420 Những gì về chèn vào sắp xếp danh sách liên kết? 1225 00:58:58,420 --> 00:58:59,440 >> ĐỐI TƯỢNG: Tôi có một câu hỏi - 1226 00:58:59,440 --> 00:58:59,980 một câu hỏi - 1227 00:58:59,980 --> 00:59:01,060 >> JASON Hirschhorn: câu trả lời là gì cho câu hỏi đó, mặc dù? 1228 00:59:01,060 --> 00:59:02,120 >> ĐỐI TƯỢNG: Chờ đợi, bạn đã yêu cầu những gì? 1229 00:59:02,120 --> 00:59:06,750 >> JASON Hirschhorn: O lớn là gì chèn vào một danh sách liên kết được sắp xếp? 1230 00:59:06,750 --> 00:59:07,070 >> ĐỐI TƯỢNG: Một? 1231 00:59:07,070 --> 00:59:09,400 Không chờ đợi, chờ đợi Không, n. 1232 00:59:09,400 --> 00:59:11,420 >> JASON Hirschhorn: N. Bên cạnh danh sách liên kết. 1233 00:59:11,420 --> 00:59:12,706 Và câu hỏi của bạn là gì? 1234 00:59:12,706 --> 00:59:16,440 >> ĐỐI TƯỢNG: Vì vậy, bạn sẽ viết o k hay o 1 cho - 1235 00:59:16,440 --> 00:59:18,150 >> JASON Hirschhorn: Oh. 1236 00:59:18,150 --> 00:59:21,830 Tôi sẽ viết o 1, có lẽ. 1237 00:59:21,830 --> 00:59:24,160 Có một cấu trúc dữ liệu khác đó sẽ là tốt. 1238 00:59:24,160 --> 00:59:25,730 Cây, cây tìm kiếm nhị phân. 1239 00:59:25,730 --> 00:59:27,510 Có gì chèn vào một cây tìm kiếm nhị phân? 1240 00:59:27,510 --> 00:59:31,190 1241 00:59:31,190 --> 00:59:33,900 >> ĐỐI TƯỢNG: Đăng nhập. 1242 00:59:33,900 --> 00:59:39,260 >> JASON Hirschhorn: Vì vậy, những gì là tồi tệ nhất trường hợp trong một cây tìm kiếm nhị phân? 1243 00:59:39,260 --> 00:59:45,350 Vì vậy, nếu chúng tôi xảy ra bắt đầu từ 5, và mỗi số lớn hơn 5, sau đó 1244 00:59:45,350 --> 00:59:48,760 chúng tôi đã có 5, 7, 9, 11, vân vân. 1245 00:59:48,760 --> 00:59:52,255 Trong trường hợp này, nó về cơ bản chỉ là một liên kết danh sách, và chúng ta cần để chèn tất cả 1246 00:59:52,255 --> 00:59:52,680 cách ở cuối. 1247 00:59:52,680 --> 00:59:54,350 Vì vậy, nó là O lớn của n. 1248 00:59:54,350 --> 00:59:57,720 >> Đó có thể là trường hợp tồi tệ nhất của chúng tôi trên một cây tìm kiếm nhị phân. 1249 00:59:57,720 --> 01:00:00,890 Rõ ràng, bạn sẽ không bao giờ xây dựng một cây tìm kiếm nhị phân với 5 trong 1250 01:00:00,890 --> 01:00:04,270 trung, biết 5 sẽ có số lượng thấp nhất. 1251 01:00:04,270 --> 01:00:08,030 Nhưng nó có thể là, nếu bạn bắt đầu từ đầu. 1252 01:00:08,030 --> 01:00:10,980 Thắc mắc về điều này trước khi tôi chuyển sang một câu hỏi khác? 1253 01:00:10,980 --> 01:00:11,560 Đó là một câu hỏi hay. 1254 01:00:11,560 --> 01:00:15,100 Tôi biết O lớn của - 1255 01:00:15,100 --> 01:00:18,620 >> ĐỐI TƯỢNG: Điều gì về tìm kiếm cho bốn? 1256 01:00:18,620 --> 01:00:20,400 >> JASON Hirschhorn: Chắc chắn chúng tôi đã tìm kiếm và phân loại. 1257 01:00:20,400 --> 01:00:22,160 Chúng tôi đã làm tất cả những thuật toán, phải. 1258 01:00:22,160 --> 01:00:23,390 Chờ đợi, là cho Câu hỏi 1? 1259 01:00:23,390 --> 01:00:23,980 Được bao phủ - 1260 01:00:23,980 --> 01:00:25,860 đã bạn đã có câu hỏi về Câu hỏi 1? 1261 01:00:25,860 --> 01:00:29,650 O thời gian chạy lớn của tìm kiếm nhị phân, sắp xếp chèn, bong bóng sắp xếp? 1262 01:00:29,650 --> 01:00:30,160 >> ĐỐI TƯỢNG: Vâng. 1263 01:00:30,160 --> 01:00:32,790 >> JASON Hirschhorn: Nếu bạn đã có điều đó câu hỏi về Câu hỏi 0, tỷ lệ cược là bạn sẽ không 1264 01:00:32,790 --> 01:00:35,180 nhận được câu hỏi chính xác trên quiz 1. 1265 01:00:35,180 --> 01:00:36,300 Có thể vẫn còn tốt để biết những người. 1266 01:00:36,300 --> 01:00:38,520 Bạn hy vọng sẽ biết gh đã. 1267 01:00:38,520 --> 01:00:40,740 >> Nhưng runtimes logarit khác có lẽ là tốt để biết. 1268 01:00:40,740 --> 01:00:42,890 Những điều đó không được bao phủ trên quiz 0. 1269 01:00:42,890 --> 01:00:47,300 Giống như tất cả các nhà khai thác trên các loại dữ liệu trừu tượng. 1270 01:00:47,300 --> 01:00:50,760 >> OK, chúng ta hãy chuyển. 1271 01:00:50,760 --> 01:00:52,190 Điều này nên được khá nhanh chóng. 1272 01:00:52,190 --> 01:00:56,170 Và điều này là một ngôn ngữ mới, chúng tôi có không thực sự được mã hóa trước khi. 1273 01:00:56,170 --> 01:00:59,300 Đây là một câu hỏi chào bán mã trong PHP. 1274 01:00:59,300 --> 01:01:01,950 Vì vậy, xem xét các mảng PHP dưới đây. 1275 01:01:01,950 --> 01:01:06,150 Viết PHP và / hoặc HTML mã như vậy mà nó kết quả đầu ra một bảng hai cột với TF 1276 01:01:06,150 --> 01:01:08,810 tên và nhà ở. 1277 01:01:08,810 --> 01:01:11,600 >> Bạn chưa bao giờ làm điều này trước, vấn đề cụ thể. 1278 01:01:11,600 --> 01:01:16,270 Nhưng điều này nên rất quen thuộc với những gì bạn đã làm trong vấn đề thiết lập 7. 1279 01:01:16,270 --> 01:01:21,250 Vì vậy, tôi sẽ sẵn sàng đặt cược bạn sẽ được yêu cầu mã gì đó trong PHP 1280 01:01:21,250 --> 01:01:23,880 rất giống với những gì bạn đã làm trong vấn đề thiết lập 7. 1281 01:01:23,880 --> 01:01:26,300 >> Thứ nhất, mảng mà không phải là cụ thể. 1282 01:01:26,300 --> 01:01:28,140 Loại mảng cái gì đây? 1283 01:01:28,140 --> 01:01:29,080 >> ĐỐI TƯỢNG: Associative. 1284 01:01:29,080 --> 01:01:31,250 >> JASON Hirschhorn: Đó là một mảng kết hợp. 1285 01:01:31,250 --> 01:01:33,750 Và sự khác biệt giữa một là những gì mảng kết hợp và một đối tượng? 1286 01:01:33,750 --> 01:01:41,780 1287 01:01:41,780 --> 01:01:44,857 >> ĐỐI TƯỢNG: Một mảng đối tượng có chỉ số các số nguyên, và một mảng kết hợp 1288 01:01:44,857 --> 01:01:47,814 là một chỉ số của một chuỗi, hoặc một cái gì đó như thế. 1289 01:01:47,814 --> 01:01:50,570 1290 01:01:50,570 --> 01:01:54,880 >> JASON Hirschhorn: Vì vậy, một loạt các đối tượng sẽ có chỉ số của 1291 01:01:54,880 --> 01:01:57,090 số nguyên, nhưng một đối tượng có các lĩnh vực. 1292 01:01:57,090 --> 01:02:01,590 Nó có những cái tên các lĩnh vực như tên, nhà, sinh viên. 1293 01:02:01,590 --> 01:02:03,720 Bạn có một ý tưởng? 1294 01:02:03,720 --> 01:02:06,630 >> ĐỐI TƯỢNG: Vâng, kết hợp mảng trong PHP, phải không? 1295 01:02:06,630 --> 01:02:07,880 Và đối tượng là trong JavaScript? 1296 01:02:07,880 --> 01:02:12,330 1297 01:02:12,330 --> 01:02:14,820 >> JASON Hirschhorn: Thành thật mà nói, không có khác biệt thực sự giữa hai người. 1298 01:02:14,820 --> 01:02:19,540 Cả hai đều có dây như các phím, và có thể có bất cứ điều gì về cơ bản như giá trị. 1299 01:02:19,540 --> 01:02:21,250 Ngôn ngữ khác nhau gọi một Điều mảng kết hợp, 1300 01:02:21,250 --> 01:02:22,750 một điều một đối tượng. 1301 01:02:22,750 --> 01:02:25,960 Vì vậy, một cách trung thực, không có thực sự khác biệt, nhưng có chắc chắn một số 1302 01:02:25,960 --> 01:02:27,730 sự khác biệt cú pháp giữa hai người. 1303 01:02:27,730 --> 01:02:28,200 Yeah. 1304 01:02:28,200 --> 01:02:33,580 >> ĐỐI TƯỢNG: Vậy là đối tượng cũng được mã hóa dưới mui xe như một bảng băm, sau đó? 1305 01:02:33,580 --> 01:02:35,796 >> JASON Hirschhorn: Điều gì làm bạn có nghĩa là, mã hóa dưới mui xe? 1306 01:02:35,796 --> 01:02:38,017 >> ĐỐI TƯỢNG: Chúng tôi đã nói rằng kết mảng là một kỹ thuật 1307 01:02:38,017 --> 01:02:39,960 băm bảng. 1308 01:02:39,960 --> 01:02:44,510 Vì vậy, đối tượng cũng kỹ thuật một bảng băm? 1309 01:02:44,510 --> 01:02:45,350 >> JASON Hirschhorn: Tôi sẽ không để trả lời câu hỏi đó. 1310 01:02:45,350 --> 01:02:46,600 Tôi sẽ lấy lại cho bạn về điều đó. 1311 01:02:46,600 --> 01:02:48,980 Nhưng tôi sẽ không nghĩ của một trong hai của những người như thế. 1312 01:02:48,980 --> 01:02:53,790 Tuy nhiên, trong bất kỳ cách nào, mảng kết hợp và đối tượng, nói chung, người sử dụng những 1313 01:02:53,790 --> 01:02:54,910 các điều khoản thay thế cho nhau. 1314 01:02:54,910 --> 01:02:57,630 Trong trường hợp này, phần mát mẻ là bạn có thể sử dụng các phím. 1315 01:02:57,630 --> 01:03:00,580 Chuỗi như là chìa khóa, chứ không phải là chỉ số đơn giản. 1316 01:03:00,580 --> 01:03:02,070 >> Vì vậy, tôi đã nói về này cho một lúc. 1317 01:03:02,070 --> 01:03:04,090 Hy vọng rằng, một số người có nhận được bắt đầu vào ngày này. 1318 01:03:04,090 --> 01:03:08,050 Chúng ta sẽ viết một số PHP và HTML mã, như vậy mà chúng ta có được một hai cột 1319 01:03:08,050 --> 01:03:11,830 bảng với tên TF và nhà ở. 1320 01:03:11,830 --> 01:03:15,380 >> OK, tôi cũng muốn có một tiêu đề hàng trên bảng này. 1321 01:03:15,380 --> 01:03:18,410 Vì vậy, tôi sẽ đi thẳng vào điều này. 1322 01:03:18,410 --> 01:03:20,770 Chúng ta sẽ tập tin, mới, và chúng ta sẽ - 1323 01:03:20,770 --> 01:03:27,780 1324 01:03:27,780 --> 01:03:28,320 >> OK. 1325 01:03:28,320 --> 01:03:29,970 Làm thế nào để bắt đầu một bảng? 1326 01:03:29,970 --> 01:03:32,090 Thẻ là những gì, Michael, để bắt đầu một bảng? 1327 01:03:32,090 --> 01:03:32,890 >> ĐỐI TƯỢNG: Bảng. 1328 01:03:32,890 --> 01:03:34,020 >> JASON Hirschhorn: Bảng. 1329 01:03:34,020 --> 01:03:37,870 Và nếu tôi mở một thẻ, những gì khác tôi cần? 1330 01:03:37,870 --> 01:03:39,810 >> ĐỐI TƯỢNG: Một cái đầu? 1331 01:03:39,810 --> 01:03:41,040 Hoặc, tôi đoán, lớp. 1332 01:03:41,040 --> 01:03:41,730 >> JASON Hirschhorn: Vì vậy, xin lỗi. 1333 01:03:41,730 --> 01:03:45,430 Cho rằng chúng ta đã viết doctab, HTML, tất cả những thứ. 1334 01:03:45,430 --> 01:03:50,230 Nhưng nếu tôi mở thẻ bảng này, những gì khác tôi cần phải viết? 1335 01:03:50,230 --> 01:03:53,450 cho xác nhận HTML? 1336 01:03:53,450 --> 01:03:55,000 >> ĐỐI TƯỢNG: Đóng nó. 1337 01:03:55,000 --> 01:03:56,050 >> JASON Hirschhorn: Đóng thẻ. 1338 01:03:56,050 --> 01:03:57,575 Làm thế nào để viết một thẻ gần bàn? 1339 01:03:57,575 --> 01:03:59,580 >> ĐỐI TƯỢNG: Dot giảm bảng. 1340 01:03:59,580 --> 01:04:00,960 >> JASON Hirschhorn: Slash bảng, tuyệt vời. 1341 01:04:00,960 --> 01:04:02,730 Có thể làm cho tinh thần để viết cả của những người với nhau vì 1342 01:04:02,730 --> 01:04:03,870 bạn đã có để làm điều đó. 1343 01:04:03,870 --> 01:04:08,575 OK, nếu tôi muốn có một dòng tiêu đề, làm thế nào Tôi viết dòng tiêu đề với tiêu đề? 1344 01:04:08,575 --> 01:04:11,650 1345 01:04:11,650 --> 01:04:19,290 >> ĐỐI TƯỢNG: Có ít hơn 10 giờ gần - 1346 01:04:19,290 --> 01:04:21,550 TR, yeah. 1347 01:04:21,550 --> 01:04:22,100 >> JASON Hirschhorn: TR? 1348 01:04:22,100 --> 01:04:25,080 >> ĐỐI TƯỢNG: Sau đó, cùng một điều, các dấu gạch chéo, yeah. 1349 01:04:25,080 --> 01:04:26,610 >> JASON Hirschhorn: OK, và cho tôi hai cột. 1350 01:04:26,610 --> 01:04:30,100 1351 01:04:30,100 --> 01:04:33,210 >> ĐỐI TƯỢNG: T D? 1352 01:04:33,210 --> 01:04:34,460 >> JASON Hirschhorn: OK. 1353 01:04:34,460 --> 01:04:37,730 1354 01:04:37,730 --> 01:04:39,520 Tôi muốn hai cột. 1355 01:04:39,520 --> 01:04:40,960 Điều này cho tôi hai cột? 1356 01:04:40,960 --> 01:04:43,880 Bao nhiêu cột này? 1357 01:04:43,880 --> 01:04:45,920 Một. 1358 01:04:45,920 --> 01:04:47,170 Vì vậy, hãy sao chép và dán này. 1359 01:04:47,170 --> 01:04:59,750 1360 01:04:59,750 --> 01:05:03,390 >> Vì vậy, trên thực tế, trên các bài kiểm tra, tất cả các mã này mà chúng tôi đã viết cho đến nay là 1361 01:05:03,390 --> 01:05:04,710 thực sự cho bạn. 1362 01:05:04,710 --> 01:05:06,200 Nhưng bạn nên có lẽ vẫn còn biết làm thế nào để viết nó. 1363 01:05:06,200 --> 01:05:06,470 Yeah. 1364 01:05:06,470 --> 01:05:10,636 >> ĐỐI TƯỢNG: Ngôi nhà của bạn là giữa hai người. 1365 01:05:10,636 --> 01:05:11,130 >> JASON Hirschhorn: Boom. 1366 01:05:11,130 --> 01:05:12,720 Nó phải đi ngay, phải không? 1367 01:05:12,720 --> 01:05:14,600 Tốt cuộc gọi. 1368 01:05:14,600 --> 01:05:17,760 Vì vậy, một lần nữa, tất cả các mã này thực sự là trao cho bạn trên các bài kiểm tra thực tế. 1369 01:05:17,760 --> 01:05:19,570 Nhưng nó là thú vị để viết nó, và bạn nên biết làm thế nào để viết nó. 1370 01:05:19,570 --> 01:05:23,640 Vì vậy, đây là nơi bạn cần để bắt đầu mã của bạn. 1371 01:05:23,640 --> 01:05:25,150 Những gì chúng ta cần phải viết ngay tại đây? 1372 01:05:25,150 --> 01:05:28,640 1373 01:05:28,640 --> 01:05:30,565 >> Xin lỗi, tôi cần phải thay đổi tên của tập tin này. 1374 01:05:30,565 --> 01:05:41,180 1375 01:05:41,180 --> 01:05:44,270 Vì vậy, chúng tôi đã lưu nó trong một tập tin HTML., không trong một tập tin PHP.. 1376 01:05:44,270 --> 01:05:47,030 Những điều này sẽ là vô nghĩa trong một tập tin PHP.. 1377 01:05:47,030 --> 01:05:48,500 Vì vậy, chúng tôi đang ở trong một tập tin HTML.. 1378 01:05:48,500 --> 01:05:50,090 Điều đầu tiên là gì Tôi cần phải viết? 1379 01:05:50,090 --> 01:05:52,990 Tôi muốn đặt một số PHP mã trong một HTML. 1380 01:05:52,990 --> 01:05:57,300 >> ĐỐI TƯỢNG: PHP, như cà rốt khác và dấu hỏi PHP, phải không? 1381 01:05:57,300 --> 01:05:58,310 >> JASON Hirschhorn: Great. 1382 01:05:58,310 --> 01:05:59,360 Và làm thế nào để tôi kết thúc không? 1383 01:05:59,360 --> 01:06:02,510 >> ĐỐI TƯỢNG: Với một dấu hỏi. 1384 01:06:02,510 --> 01:06:03,120 >> JASON Hirschhorn: Đó là tuyệt vời. 1385 01:06:03,120 --> 01:06:07,090 Đó là điều đầu tiên tôi cần nếu tôi muốn đặt một số mã PHP ở đây. 1386 01:06:07,090 --> 01:06:11,210 >> ĐỐI TƯỢNG: Tôi nghĩ một PHP. tập tin có thể mất HTML. 1387 01:06:11,210 --> 01:06:12,290 >> JASON Hirschhorn: Vâng. 1388 01:06:12,290 --> 01:06:15,330 Một tập tin PHP. Có thể mất một HTML và được hiển thị. 1389 01:06:15,330 --> 01:06:16,450 Đó là xấu của tôi. 1390 01:06:16,450 --> 01:06:18,300 Tôi chỉ cố gắng bắt chước những gì nó đã được trên các bài kiểm tra. 1391 01:06:18,300 --> 01:06:21,910 1392 01:06:21,910 --> 01:06:24,720 >> OK, xin lỗi để gây nhầm lẫn bạn. 1393 01:06:24,720 --> 01:06:25,550 Có, practice.HTML. 1394 01:06:25,550 --> 01:06:27,340 Bây giờ chúng ta sẽ đặt một số mã PHP in 1395 01:06:27,340 --> 01:06:30,530 Dòng đầu tiên của là những gì Mã PHP tôi nên viết? 1396 01:06:30,530 --> 01:06:33,360 Tôi sẽ phải đi qua mảng này và làm cho nó vào một bảng. 1397 01:06:33,360 --> 01:06:34,600 Yeah. 1398 01:06:34,600 --> 01:06:37,160 >> ĐỐI TƯỢNG: Bạn có thể sử dụng một cho H vòng lặp hoặc một vòng lặp. 1399 01:06:37,160 --> 01:06:38,415 >> JASON Hirschhorn: OK, những gì Bạn muốn sử dụng không? 1400 01:06:38,415 --> 01:06:40,720 >> ĐỐI TƯỢNG: Tôi sẽ sử dụng một vòng lặp for. 1401 01:06:40,720 --> 01:06:48,700 Cho, và sau đó bạn làm ký hiệu đô la i bằng dấu chấm phẩy 0 đô la 1402 01:06:48,700 --> 01:06:51,580 ký tôi ít hơn 2. 1403 01:06:51,580 --> 01:06:55,455 Và sau đó dấu chấm phẩy i đô la ký tôi cộng với cộng. 1404 01:06:55,455 --> 01:07:01,890 1405 01:07:01,890 --> 01:07:03,880 >> JASON Hirschhorn: Làm thế nào bạn biết sử dụng một 2? 1406 01:07:03,880 --> 01:07:10,444 >> ĐỐI TƯỢNG: Bởi vì có hai mảng kết hợp trong lớn hơn 1407 01:07:10,444 --> 01:07:11,960 mảng kết hợp. 1408 01:07:11,960 --> 01:07:13,610 >> JASON Hirschhorn: Vì vậy, điều lớn của không phải là một mảng liên kết. 1409 01:07:13,610 --> 01:07:15,500 Điều lớn chỉ là một mảng bình thường. 1410 01:07:15,500 --> 01:07:17,380 Nhưng bạn nói đúng, có hai mảng kết hợp 1411 01:07:17,380 --> 01:07:18,910 trong mảng lớn hơn của chúng tôi. 1412 01:07:18,910 --> 01:07:20,310 Đó là lý do tại sao bạn sử dụng hai. 1413 01:07:20,310 --> 01:07:24,270 Tôi cảm thấy khó chịu giả định rằng họ 2, do đó một cách để viết những gì 1414 01:07:24,270 --> 01:07:26,810 này mà không có giả định rằng họ 2? 1415 01:07:26,810 --> 01:07:27,507 >> ĐỐI TƯỢNG: [nghe được]? 1416 01:07:27,507 --> 01:07:29,165 >> JASON Hirschhorn: OK, làm thế nào để bạn viết đó? 1417 01:07:29,165 --> 01:07:35,262 >> ĐỐI TƯỢNG: ký hiệu đô la Foreach TFS hoặc như đô la dấu hiệu tf. 1418 01:07:35,262 --> 01:07:38,360 1419 01:07:38,360 --> 01:07:41,960 >> JASON Hirschhorn: OK, vì vậy cho mỗi TFS như TFS, tôi muốn, bây giờ 1420 01:07:41,960 --> 01:07:43,650 một lần nữa, có bàn của tôi. 1421 01:07:43,650 --> 01:07:45,250 Vì vậy, những người có thể cho tôi dòng tiếp theo của mã? 1422 01:07:45,250 --> 01:07:52,870 1423 01:07:52,870 --> 01:07:59,810 >> ĐỐI TƯỢNG: In, và sau đó trong trích dẫn, tr khung cuối 1424 01:07:59,810 --> 01:08:02,670 khung, trích dẫn kết thúc. 1425 01:08:02,670 --> 01:08:05,300 Ngoặc kết thúc, dấu chấm phẩy. 1426 01:08:05,300 --> 01:08:07,135 >> JASON Hirschhorn: OK, và những gì mà sẽ làm gì? 1427 01:08:07,135 --> 01:08:08,610 >> ĐỐI TƯỢNG: Nó sẽ nói, hàng mới. 1428 01:08:08,610 --> 01:08:11,070 Nó sẽ đặt tag cho một hàng mới. 1429 01:08:11,070 --> 01:08:13,000 >> JASON Hirschhorn: Đúng, PHP này, như chúng tôi đã nói trước đó - điều này 1430 01:08:13,000 --> 01:08:22,160 PHP sẽ được đánh giá, và sau đó nó sẽ in ra tập tin này một 1431 01:08:22,160 --> 01:08:26,350 bảng kéo, và sau đó là HTML sẽ được đánh giá. 1432 01:08:26,350 --> 01:08:27,810 Chúng ta chỉ cần sao chép này HTML chúng tôi đã ở đây. 1433 01:08:27,810 --> 01:08:28,120 Yeah. 1434 01:08:28,120 --> 01:08:29,470 >> ĐỐI TƯỢNG: [nghe được]? 1435 01:08:29,470 --> 01:08:30,290 >> JASON Hirschhorn: Xin lỗi? 1436 01:08:30,290 --> 01:08:31,240 Nó ở ngay đây. 1437 01:08:31,240 --> 01:08:33,590 Rơi năm 2012. 1438 01:08:33,590 --> 01:08:35,970 Không nhìn vào các câu trả lời, chúng ta hãy cùng nhau giải quyết nó. 1439 01:08:35,970 --> 01:08:37,330 Vì vậy, chúng tôi in dòng của bảng. 1440 01:08:37,330 --> 01:08:38,550 Vì vậy, có lẽ bạn đang trong swing của sự vật. 1441 01:08:38,550 --> 01:08:41,060 Dòng tiếp theo của những gì mã chúng tôi cần phải viết? 1442 01:08:41,060 --> 01:08:42,926 Assam, cho tôi những dòng tiếp theo của mã. 1443 01:08:42,926 --> 01:08:46,290 >> ĐỐI TƯỢNG: Bạn cần tên của tf. 1444 01:08:46,290 --> 01:08:54,319 Tf mở dấu ngoặc dấu ngoặc kép tên ngoặc đóng. 1445 01:08:54,319 --> 01:08:57,310 >> JASON Hirschhorn: Hãy cho tôi tên của họ. 1446 01:08:57,310 --> 01:08:58,540 >> ĐỐI TƯỢNG: Bạn cần in đó. 1447 01:08:58,540 --> 01:08:59,790 >> [Interposing TIẾNG NÓI] 1448 01:08:59,790 --> 01:09:01,963 1449 01:09:01,963 --> 01:09:03,430 >> JASON Hirschhorn: OK, làm thế nào để in nó? 1450 01:09:03,430 --> 01:09:04,680 >> [Interposing TIẾNG NÓI] 1451 01:09:04,680 --> 01:09:08,609 1452 01:09:08,609 --> 01:09:10,350 >> JASON Hirschhorn: Tôi đang mất tích một cái gì đó ngay bây giờ. 1453 01:09:10,350 --> 01:09:12,470 Tôi đang thiếu gì? 1454 01:09:12,470 --> 01:09:13,720 >> ĐỐI TƯỢNG: Bạn cần một dấu đô la. 1455 01:09:13,720 --> 01:09:15,960 1456 01:09:15,960 --> 01:09:17,210 >> JASON Hirschhorn: Điều gì khác tôi bị mất? 1457 01:09:17,210 --> 01:09:20,100 1458 01:09:20,100 --> 01:09:21,650 Tất cả chúng tôi đã in cho đến nay là tr. 1459 01:09:21,650 --> 01:09:25,589 1460 01:09:25,589 --> 01:09:27,470 >> ĐỐI TƯỢNG: Đóng tr sau khi nó. 1461 01:09:27,470 --> 01:09:28,720 >> JASON Hirschhorn: Vì vậy, chúng ta cần để đóng cửa sau khi tr. 1462 01:09:28,720 --> 01:09:34,390 1463 01:09:34,390 --> 01:09:37,906 Ai nhìn thấy những gì chúng ta đang thiếu trên dòng 16? 1464 01:09:37,906 --> 01:09:39,340 Yeah, Anna. 1465 01:09:39,340 --> 01:09:47,050 >> ĐỐI TƯỢNG: Bạn cần phải mở một td và dấu ngoặc nhọn. 1466 01:09:47,050 --> 01:09:49,380 >> JASON Hirschhorn: Và nơi Chúng ta đặt dấu ngoặc nhọn? 1467 01:09:49,380 --> 01:09:51,790 >> ĐỐI TƯỢNG: Xung quanh tên tf. 1468 01:09:51,790 --> 01:09:53,080 >> JASON Hirschhorn: Như thế này? 1469 01:09:53,080 --> 01:09:55,420 >> ĐỐI TƯỢNG: Vâng. 1470 01:09:55,420 --> 01:09:59,000 Và sau đó đóng td. 1471 01:09:59,000 --> 01:10:00,250 >> JASON Hirschhorn: Giống như điều đó không? 1472 01:10:00,250 --> 01:10:03,370 1473 01:10:03,370 --> 01:10:06,950 >> ĐỐI TƯỢNG: Bạn có cần ngoặc kép đánh dấu bên cạnh các dấu ngoặc nhọn? 1474 01:10:06,950 --> 01:10:07,460 >> JASON Hirschhorn: Ngay ở đây? 1475 01:10:07,460 --> 01:10:08,710 Không, bạn không. 1476 01:10:08,710 --> 01:10:10,820 1477 01:10:10,820 --> 01:10:12,550 Vì vậy, đó là chính xác. 1478 01:10:12,550 --> 01:10:12,940 Yeah. 1479 01:10:12,940 --> 01:10:15,290 >> ĐỐI TƯỢNG: Vì vậy, sự khác biệt giữa các và encatenating với dấu chấm là, nếu 1480 01:10:15,290 --> 01:10:18,420 bạn sử dụng dấu chấm, bạn phải có dấu ngoặc kép, sau đó một dấu chấm, 1481 01:10:18,420 --> 01:10:20,370 sau đó các dấu chấm - 1482 01:10:20,370 --> 01:10:20,520 >> JASON Hirschhorn: Đúng. 1483 01:10:20,520 --> 01:10:23,800 Vì vậy, bạn đang nói có một cuối cùng cách viết này như thế. 1484 01:10:23,800 --> 01:10:26,760 1485 01:10:26,760 --> 01:10:28,966 Những gì các nhà điều hành nối trong JavaScript? 1486 01:10:28,966 --> 01:10:31,200 >> ĐỐI TƯỢNG: Một dấu cộng. 1487 01:10:31,200 --> 01:10:34,710 Bạn quên đặt các xoăn cú đúp trở lại. 1488 01:10:34,710 --> 01:10:35,760 >> JASON Hirschhorn: Great. 1489 01:10:35,760 --> 01:10:38,850 Và có một dòng hơn mã mất tích. 1490 01:10:38,850 --> 01:10:40,130 Ai có thể cho tôi những dòng cuối cùng mã chúng ta đang thiếu? 1491 01:10:40,130 --> 01:10:43,940 1492 01:10:43,940 --> 01:10:47,602 >> ĐỐI TƯỢNG: Chỉ cần một điều chính xác, chỉ với nhà thay vì tên. 1493 01:10:47,602 --> 01:10:52,960 1494 01:10:52,960 --> 01:10:53,450 Lớn 1495 01:10:53,450 --> 01:10:54,390 >> JASON Hirschhorn: Great. 1496 01:10:54,390 --> 01:10:59,320 Và cú pháp của bạn là chính xác cho nhận được những điều trong một mảng liên kết. 1497 01:10:59,320 --> 01:11:04,450 Vì vậy, trong các bài kiểm tra thực tế, bạn có thực sự từ bỏ cho đến khi ở đây. 1498 01:11:04,450 --> 01:11:05,710 Vì vậy, mã này đã được trao cho bạn. 1499 01:11:05,710 --> 01:11:07,750 Tất cả các bạn đã phải viết là những bốn dòng và nhớ 1500 01:11:07,750 --> 01:11:09,190 đóng thẻ bảng. 1501 01:11:09,190 --> 01:11:11,370 Các bạn thực sự đã làm tất cả và nhiều hơn nữa. 1502 01:11:11,370 --> 01:11:11,810 Yeah. 1503 01:11:11,810 --> 01:11:14,850 >> ĐỐI TƯỢNG: Vì vậy, nó sẽ là chức năng như vậy nếu bạn chỉ có tất cả trong 1504 01:11:14,850 --> 01:11:17,250 một cuộc gọi in lớn, phải không? 1505 01:11:17,250 --> 01:11:19,630 Và sau đó chỉ cần nối nó trên, vân vân? 1506 01:11:19,630 --> 01:11:20,730 >> JASON Hirschhorn: Giống như điều đó không? 1507 01:11:20,730 --> 01:11:21,980 >> ĐỐI TƯỢNG: Vâng. 1508 01:11:21,980 --> 01:11:23,810 1509 01:11:23,810 --> 01:11:26,940 Nó sẽ không chỉ nhìn tốt nếu bạn nhìn vào nó khi bạn đang kiểm tra 1510 01:11:26,940 --> 01:11:28,550 các yếu tố trên trang web của bạn, phải không? 1511 01:11:28,550 --> 01:11:29,800 >> JASON Hirschhorn: Tôi đồng ý. 1512 01:11:29,800 --> 01:11:35,410 1513 01:11:35,410 --> 01:11:38,710 Nếu tôi nạp trang web này, tôi sẽ là có thể nhìn thấy mã PHP này, bao giờ? 1514 01:11:38,710 --> 01:11:39,240 >> ĐỐI TƯỢNG: số 1515 01:11:39,240 --> 01:11:40,080 >> JASON Hirschhorn: số 1516 01:11:40,080 --> 01:11:42,240 Và thực sự, tôi sẽ không. 1517 01:11:42,240 --> 01:11:43,920 >> ĐỐI TƯỢNG: Đây không phải là HTML, phải không? 1518 01:11:43,920 --> 01:11:45,000 Vì vậy, bạn có thể có thể - 1519 01:11:45,000 --> 01:11:46,780 >> JASON Hirschhorn: Vì vậy, PHP này sẽ được đánh giá phía máy chủ. 1520 01:11:46,780 --> 01:11:51,020 PHP luôn được đánh giá ở phía máy chủ, vì vậy bạn không bao giờ có thể nhìn thấy mã PHP. 1521 01:11:51,020 --> 01:11:52,980 >> ĐỐI TƯỢNG: Nhưng bạn có thể xem kết quả của các bản in. 1522 01:11:52,980 --> 01:11:53,480 >> JASON Hirschhorn: Đúng vậy. 1523 01:11:53,480 --> 01:11:55,510 Và nó có thể không trung thực đặt tất cả trên đường dây. 1524 01:11:55,510 --> 01:11:59,740 Nó có thể định dạng nó độc đáo cho bạn, hoặc nó có thể đặt nó trên một dòng. 1525 01:11:59,740 --> 01:12:01,521 Không rõ ràng. 1526 01:12:01,521 --> 01:12:03,596 Nhưng có, điểm tốt. 1527 01:12:03,596 --> 01:12:06,470 >> ĐỐI TƯỢNG: Làm thế nào đến đó của Không tô màu văn bản cho 1528 01:12:06,470 --> 01:12:07,550 bất kỳ các lệnh PHP? 1529 01:12:07,550 --> 01:12:09,370 Bởi vì tôi nhớ nhìn thấy đó. 1530 01:12:09,370 --> 01:12:11,620 >> JASON Hirschhorn: Bởi vì đó là một HTML. Nộp lên đây ở đầu trang. 1531 01:12:11,620 --> 01:12:20,390 1532 01:12:20,390 --> 01:12:21,650 Có bạn đi. 1533 01:12:21,650 --> 01:12:25,752 1534 01:12:25,752 --> 01:12:28,800 >> ĐỐI TƯỢNG: Nếu chúng tôi đã làm phương pháp ban đầu với cho các vòng, phải, nếu chúng ta 1535 01:12:28,800 --> 01:12:33,500 muốn truy cập vào một TFS, chúng tôi sẽ làm khung TFS 0 khung, sau đó 1536 01:12:33,500 --> 01:12:35,180 [Nghe được]? 1537 01:12:35,180 --> 01:12:35,970 >> JASON Hirschhorn: Bạn sẽ - 1538 01:12:35,970 --> 01:12:40,560 do đó, bạn đang nói cho cho vòng lặp, bạn sẽ làm gì trong khung đô la dấu hiệu TFS 1 1539 01:12:40,560 --> 01:12:41,850 hoặc tôi, phải. 1540 01:12:41,850 --> 01:12:46,780 Hoặc ký hiệu đô la tôi đóng khung và sau đó khung vuông 1541 01:12:46,780 --> 01:12:49,600 dấu ngoặc kép, yeah. 1542 01:12:49,600 --> 01:12:50,640 >> OK, tuyệt vời. 1543 01:12:50,640 --> 01:12:53,020 Chúng ta có thêm một một cách nhanh chóng. 1544 01:12:53,020 --> 01:12:55,090 Bảy phút, vì vậy tôi muốn đi qua này. 1545 01:12:55,090 --> 01:12:56,160 Đây là một ví dụ khác. 1546 01:12:56,160 --> 01:12:58,740 Chúng tôi là một ngôn ngữ hoàn toàn khác bây giờ. 1547 01:12:58,740 --> 01:12:59,990 >> Chúng tôi có một số mã HTML. 1548 01:12:59,990 --> 01:13:02,480 1549 01:13:02,480 --> 01:13:07,460 Đó là loại nhỏ trên màn hình, nhưng Tôi muốn bạn để xem xét thông qua nó thực sự 1550 01:13:07,460 --> 01:13:11,140 nhanh chóng, và có thể ai đó cho tôi biết, nếu tôi được là để tải trang web này, 1551 01:13:11,140 --> 01:13:12,390 những gì tôi nhìn thấy? 1552 01:13:12,390 --> 01:13:22,710 1553 01:13:22,710 --> 01:13:26,450 Mô tả tất cả mọi thứ về trang web này. 1554 01:13:26,450 --> 01:13:28,630 Noah? 1555 01:13:28,630 --> 01:13:30,450 Tôi sẽ xem những gì? 1556 01:13:30,450 --> 01:13:38,140 >> ĐỐI TƯỢNG: Mã ở cuối phía trước của Google với một cảm giác về văn bản và một 1557 01:13:38,140 --> 01:13:39,190 nút gửi. 1558 01:13:39,190 --> 01:13:41,180 >> JASON Hirschhorn: Và những gì nút sẽ nói gì? 1559 01:13:41,180 --> 01:13:42,430 >> ĐỐI TƯỢNG: Submit. 1560 01:13:42,430 --> 01:13:44,620 1561 01:13:44,620 --> 01:13:45,160 Oh, tìm kiếm. 1562 01:13:45,160 --> 01:13:45,840 Tôi xin lỗi. 1563 01:13:45,840 --> 01:13:46,830 >> JASON Hirschhorn: Nó sẽ nói tìm kiếm. 1564 01:13:46,830 --> 01:13:47,520 Hãy nhớ rằng, tên. 1565 01:13:47,520 --> 01:13:50,550 Những gì chúng ta sử dụng tên gì? 1566 01:13:50,550 --> 01:13:53,774 Thuộc tính tên này, những gì được sử dụng cho? 1567 01:13:53,774 --> 01:13:55,470 >> [Interposing TIẾNG NÓI] 1568 01:13:55,470 --> 01:13:59,300 >> ĐỐI TƯỢNG: Đó là tên của nó khi nó nhấp? 1569 01:13:59,300 --> 01:14:00,160 >> JASON Hirschhorn: Đó có thể là. 1570 01:14:00,160 --> 01:14:02,690 Nhưng những gì chúng ta thường thấy - tại sao chúng ta cho tên hàng đợi này? 1571 01:14:02,690 --> 01:14:03,830 Tại sao chúng ta thấy không? 1572 01:14:03,830 --> 01:14:05,220 Yeah. 1573 01:14:05,220 --> 01:14:08,600 >> ĐỐI TƯỢNG: Không có trở thành chỉ số của biến siêu toàn cầu? 1574 01:14:08,600 --> 01:14:12,740 >> JASON Hirschhorn: Vâng, nói chung khi mẫu này sẽ trình, và sau đó, nơi 1575 01:14:12,740 --> 01:14:13,500 điều này sẽ trình? 1576 01:14:13,500 --> 01:14:14,750 Trang gì? 1577 01:14:14,750 --> 01:14:16,820 1578 01:14:16,820 --> 01:14:18,460 Noah, những gì trang này sẽ trình? 1579 01:14:18,460 --> 01:14:25,710 1580 01:14:25,710 --> 01:14:27,700 >> ĐỐI TƯỢNG: Tôi không chắc chắn. 1581 01:14:27,700 --> 01:14:28,920 >> JASON Hirschhorn: ở đâu chúng ta có thể có thể tìm thấy nó? 1582 01:14:28,920 --> 01:14:31,025 Nơi nào bạn tìm thấy những gì trang nó trình để? 1583 01:14:31,025 --> 01:14:32,850 Những gì dòng mã? 1584 01:14:32,850 --> 01:14:34,040 >> ĐỐI TƯỢNG: hành động mẫu. 1585 01:14:34,040 --> 01:14:34,650 >> JASON Hirschhorn: Chính xác. 1586 01:14:34,650 --> 01:14:35,130 Hành động. 1587 01:14:35,130 --> 01:14:37,100 Vì vậy, nó chịu sự trang tìm kiếm. 1588 01:14:37,100 --> 01:14:38,630 Tìm kiếm dấu gạch chéo ngược. 1589 01:14:38,630 --> 01:14:40,140 Vì vậy, đó là chính xác. 1590 01:14:40,140 --> 01:14:40,680 Phương pháp gì? 1591 01:14:40,680 --> 01:14:42,090 >> ĐỐI TƯỢNG: Nhận. 1592 01:14:42,090 --> 01:14:42,490 >> JASON Hirschhorn: Nhận. 1593 01:14:42,490 --> 01:14:43,420 Chính xác. 1594 01:14:43,420 --> 01:14:44,490 Vì vậy, chúng ta đọc này. 1595 01:14:44,490 --> 01:14:45,180 Điều này sẽ là một hình thức. 1596 01:14:45,180 --> 01:14:45,910 Bạn đúng. 1597 01:14:45,910 --> 01:14:50,340 Hai điều về hình thức, tiêu đề của trang và hàng đầu sẽ là Google. 1598 01:14:50,340 --> 01:14:54,270 >> Vì vậy, đây là hai câu hỏi mà bạn nên có thể trả lời về trang này. 1599 01:14:54,270 --> 01:15:01,760 Nếu HTML này sống tại trang web này và người sử dụng đầu vào lỗi vào văn bản này 1600 01:15:01,760 --> 01:15:06,900 lĩnh vực ngay tại đây, những gì URL sẽ người sử dụng tìm thấy mình trên 1601 01:15:06,900 --> 01:15:08,150 nộp mẫu đơn? 1602 01:15:08,150 --> 01:15:10,980 1603 01:15:10,980 --> 01:15:12,510 >> Vì vậy, chúng tôi có điều này ngay tại đây. 1604 01:15:12,510 --> 01:15:13,720 Tôi sẽ quay trở lại trang này, mặc dù. 1605 01:15:13,720 --> 01:15:16,980 Tôi sẽ viết lên một phần đầu tiên này. 1606 01:15:16,980 --> 01:15:18,230 Tất cả mọi người có thể thấy ở đây? 1607 01:15:18,230 --> 01:15:30,620 1608 01:15:30,620 --> 01:15:32,906 OK, Mario, bạn nghĩ rằng bạn biết? 1609 01:15:32,906 --> 01:15:34,700 Trang gì? 1610 01:15:34,700 --> 01:15:37,630 >> ĐỐI TƯỢNG: Dấu gạch chéo ngược tìm kiếm. 1611 01:15:37,630 --> 01:15:38,880 >> JASON Hirschhorn: Tôi sẽ để di chuyển xuống đây. 1612 01:15:38,880 --> 01:15:44,800 1613 01:15:44,800 --> 01:15:49,155 OK, dấu gạch chéo ngược câu hỏi tìm kiếm đánh dấu q bằng lỗi. 1614 01:15:49,155 --> 01:15:53,560 1615 01:15:53,560 --> 01:15:55,165 Bất kỳ ai có một đề nghị khác nhau? 1616 01:15:55,165 --> 01:15:57,910 1617 01:15:57,910 --> 01:15:59,160 Yeah. 1618 01:15:59,160 --> 01:16:01,700 1619 01:16:01,700 --> 01:16:03,740 >> Vì vậy, làm thế nào để chúng ta có được điều này? 1620 01:16:03,740 --> 01:16:05,520 Vâng, chúng tôi đã nhìn thấy điều này trước đây. 1621 01:16:05,520 --> 01:16:07,170 Và bạn đến với điều này trước đó. 1622 01:16:07,170 --> 01:16:08,870 Bạn đã đúng, Noah, rằng hành động cho chúng ta những gì 1623 01:16:08,870 --> 01:16:11,700 trang chúng ta sẽ. 1624 01:16:11,700 --> 01:16:12,820 >> Chúng tôi cũng biết phương pháp. 1625 01:16:12,820 --> 01:16:13,420 Chúng tôi đang làm có được. 1626 01:16:13,420 --> 01:16:17,040 Và sự khác biệt giữa nhận và bài được mà có được hiển thị trong URL 1627 01:16:17,040 --> 01:16:18,490 và bài không. 1628 01:16:18,490 --> 01:16:22,760 Vì vậy, nếu tôi đã viết bài ngay trong phương pháp, những gì sẽ là khác nhau? 1629 01:16:22,760 --> 01:16:24,250 >> ĐỐI TƯỢNG: Nó sẽ chỉ được tìm kiếm dấu gạch chéo. 1630 01:16:24,250 --> 01:16:25,400 >> JASON Hirschhorn: Nó sẽ chỉ được cắt giảm tìm kiếm. 1631 01:16:25,400 --> 01:16:27,400 Không có gì hơn đây sẽ xảy ra. 1632 01:16:27,400 --> 01:16:30,030 Nhưng vì đó là một nhận được, URL được hiển thị như sau. 1633 01:16:30,030 --> 01:16:35,140 Đầu tiên chúng ta thấy một dấu hỏi và chúng tôi nhìn thấy tên và giá trị. 1634 01:16:35,140 --> 01:16:42,730 Nói rằng đã có một trường văn bản khác và Tôi đưa cho nó một cái tên của r và tôi nhập vào một 1635 01:16:42,730 --> 01:16:45,220 giá trị, sâu bướm. 1636 01:16:45,220 --> 01:16:48,560 Điều này sẽ bây giờ như thế nào? 1637 01:16:48,560 --> 01:16:52,040 Tôi có một lĩnh vực nhiều văn bản hơn, tôi đưa ra một tên của r và giá trị của con sâu bướm. 1638 01:16:52,040 --> 01:16:56,990 >> ĐỐI TƯỢNG: Sau khi thanh bạn muốn có sâu bướm ký hiệu. 1639 01:16:56,990 --> 01:16:58,380 >> JASON Hirschhorn: Đó là không ký hiệu. 1640 01:16:58,380 --> 01:17:00,500 >> ĐỐI TƯỢNG: Hoặc chỉ cần bất cứ điều gì và biểu tượng. 1641 01:17:00,500 --> 01:17:01,330 >> JASON Hirschhorn: Vâng, không có. 1642 01:17:01,330 --> 01:17:03,700 Bạn nói đúng, tôi đã sai. 1643 01:17:03,700 --> 01:17:05,660 Điều đó giống như một gam. 1644 01:17:05,660 --> 01:17:06,910 >> ĐỐI TƯỢNG: Caterpillar. 1645 01:17:06,910 --> 01:17:08,840 1646 01:17:08,840 --> 01:17:11,090 r bằng bánh xích, xin lỗi. 1647 01:17:11,090 --> 01:17:13,970 1648 01:17:13,970 --> 01:17:14,700 >> JASON Hirschhorn: Có không r trong đó không? 1649 01:17:14,700 --> 01:17:16,680 >> ĐỐI TƯỢNG: Không, không. 1650 01:17:16,680 --> 01:17:18,030 >> JASON Hirschhorn: Chúng ta sẽ nói về điều đó sau giờ học. 1651 01:17:18,030 --> 01:17:18,930 Đó chính quyền. 1652 01:17:18,930 --> 01:17:20,530 Vì vậy, và là chính xác. 1653 01:17:20,530 --> 01:17:23,430 Và sau đó bạn có thể có nhiều trong số này, và họ tất cả sẽ được nối 1654 01:17:23,430 --> 01:17:24,950 cùng với đó và. 1655 01:17:24,950 --> 01:17:25,900 Vì vậy, đó là chính xác. 1656 01:17:25,900 --> 01:17:27,700 >> Có thêm một câu hỏi. 1657 01:17:27,700 --> 01:17:30,676 Phác họa DOM của HTML này, bắt đầu với tài liệu. 1658 01:17:30,676 --> 01:17:33,330 1659 01:17:33,330 --> 01:17:34,570 Chúng ta có thể làm điều đó trong hai phút. 1660 01:17:34,570 --> 01:17:36,790 Chúng tôi sẽ làm điều đó ở đây. 1661 01:17:36,790 --> 01:17:38,040 Tôi sẽ quay trở lại trang web này. 1662 01:17:38,040 --> 01:17:40,630 1663 01:17:40,630 --> 01:17:42,160 OK, chúng ta bắt đầu với tài liệu. 1664 01:17:42,160 --> 01:17:49,698 1665 01:17:49,698 --> 01:17:52,090 >> Cái gì tiếp theo? 1666 01:17:52,090 --> 01:17:53,910 Vì vậy, khi bạn đang đọc thông qua - 1667 01:17:53,910 --> 01:17:54,540 >> ĐỐI TƯỢNG: HTML. 1668 01:17:54,540 --> 01:17:55,790 >> JASON Hirschhorn: HTML là tới. 1669 01:17:55,790 --> 01:17:57,850 Chúng ta sẽ đi từ khóa bằng thẻ. 1670 01:17:57,850 --> 01:18:00,890 Có gì sau khi HTML? 1671 01:18:00,890 --> 01:18:01,550 >> ĐỐI TƯỢNG: Trưởng. 1672 01:18:01,550 --> 01:18:02,800 >> JASON Hirschhorn: Trưởng. 1673 01:18:02,800 --> 01:18:05,090 1674 01:18:05,090 --> 01:18:08,520 Có gì sau khi người đứng đầu? 1675 01:18:08,520 --> 01:18:09,770 >> ĐỐI TƯỢNG: Tiêu đề. 1676 01:18:09,770 --> 01:18:11,880 1677 01:18:11,880 --> 01:18:12,560 >> JASON Hirschhorn: Tiêu đề. 1678 01:18:12,560 --> 01:18:14,740 Và danh hiệu có giá trị của Google, nhưng tôi sẽ không để 1679 01:18:14,740 --> 01:18:16,240 viết rằng trong lúc này. 1680 01:18:16,240 --> 01:18:18,750 OK, nơi mà cơ thể đi đâu? 1681 01:18:18,750 --> 01:18:20,890 >> ĐỐI TƯỢNG: Cũng sắp tắt của HTML. 1682 01:18:20,890 --> 01:18:21,490 >> JASON Hirschhorn: Chính xác. 1683 01:18:21,490 --> 01:18:22,820 Cơ thể nói ra đây. 1684 01:18:22,820 --> 01:18:25,970 1685 01:18:25,970 --> 01:18:30,330 Không hiểu tại sao tất cả mọi người đó là trường hợp? 1686 01:18:30,330 --> 01:18:32,970 Có thể bạn sẽ có thể tìm ra điều này, quá, ngay cả khi tôi không có 1687 01:18:32,970 --> 01:18:33,665 thụt đầu dòng tốt đẹp. 1688 01:18:33,665 --> 01:18:37,680 >> Thụt đầu dòng thứ cho nó đi, nhưng bạn có thể thấy rằng các thẻ đầu có 1689 01:18:37,680 --> 01:18:41,240 bị đóng cửa, có nghĩa là chúng ta có thể không có thể đi xuống đây. 1690 01:18:41,240 --> 01:18:43,460 Chúng ta cần phải quay trở lại bất cứ điều gì là ngay trước khi người đứng đầu 1691 01:18:43,460 --> 01:18:44,730 thẻ, hoặc dưới đó. 1692 01:18:44,730 --> 01:18:46,720 Chúng tôi thậm chí với thẻ đầu. 1693 01:18:46,720 --> 01:18:48,560 >> Và dưới cơ thể đi hình thức. 1694 01:18:48,560 --> 01:18:50,300 Theo hình thức, có hai yếu tố đầu vào. 1695 01:18:50,300 --> 01:18:53,330 1696 01:18:53,330 --> 01:18:54,420 OK. 1697 01:18:54,420 --> 01:18:55,490 Đó là tất cả tôi có. 1698 01:18:55,490 --> 01:18:56,980 Bài kiểm tra 1 là ngày mai. 1699 01:18:56,980 --> 01:18:58,350 Tôi rất vui mừng cho các bạn. 1700 01:18:58,350 --> 01:18:59,690 Nó sẽ là một vụ nổ. 1701 01:18:59,690 --> 01:19:00,250 >> Nếu bạn có - 1702 01:19:00,250 --> 01:19:00,600 >> ĐỐI TƯỢNG: [vỗ tay] 1703 01:19:00,600 --> 01:19:02,460 >> JASON Hirschhorn: Oh dừng lại, dừng lại. 1704 01:19:02,460 --> 01:19:04,520 Nhưng không, tôi đùa. 1705 01:19:04,520 --> 01:19:07,220 Nếu bạn có bất kỳ câu hỏi, phải sau khi phần, tôi sẽ được ở bên ngoài. 1706 01:19:07,220 --> 01:19:11,700 Nếu bạn có bất kỳ câu hỏi tối nay, cảm thấy tự do để gọi, email, Gchat, 1707 01:19:11,700 --> 01:19:12,740 nhà cung cấp chim bồ câu tôi. 1708 01:19:12,740 --> 01:19:13,950 May mắn vào ngày mai. 1709 01:19:13,950 --> 01:19:16,220 Có một kì nghỉ lễ Tạ ơn tuyệt vời, nếu tôi không nhìn thấy bạn trước đó. 1710 01:19:16,220 --> 01:19:19,320 Và tôi sẽ nhìn thấy bạn sau Lễ Tạ Ơn hôm thứ Ba cho thức của chúng tôi 1711 01:19:19,320 --> 01:19:20,295 phần bên bao giờ hết. 1712 01:19:20,295 --> 01:19:21,545 >> ĐỐI TƯỢNG: [nghe được]. 1713 01:19:21,545 --> 01:19:25,270 1714 01:19:25,270 --> 01:19:25,790 >> JASON Hirschhorn: Great. 1715 01:19:25,790 --> 01:19:28,900 OK, tôi sẽ gặp các bạn tiếp theo tuần, hoặc trong hai tuần. 1716 01:19:28,900 --> 01:19:30,150 Và may mắn vào ngày mai. 1717 01:19:30,150 --> 01:19:32,203