1 00:00:00,000 --> 00:00:00,500 2 00:00:00,500 --> 00:00:05,120 [MÜZİK OYUN] 3 00:00:05,120 --> 00:00:12,026 4 00:00:12,026 --> 00:00:12,900 HOPARLÖR 1: Pekala. 5 00:00:12,900 --> 00:00:14,600 Herkes arka bölüme hoş geldiniz. 6 00:00:14,600 --> 00:00:18,660 Hepinizin başarıyla umut senin sınav kurtarıldı 7 00:00:18,660 --> 00:00:19,510 Geçen hafta. 8 00:00:19,510 --> 00:00:22,564 Ben o zamanlarda biraz deli olduğunu biliyorum. 9 00:00:22,564 --> 00:00:25,230 Sen eğer ben, daha önce söylediğim gibi standart sapma olan, 10 00:00:25,230 --> 00:00:28,188 Gerçekten, özellikle, bu konuda endişelenmenize gerek yok daha az rahat bölüm için. 11 00:00:28,188 --> 00:00:30,230 Yani olması gereken yerde hakkında. 12 00:00:30,230 --> 00:00:32,850 >> Büyük yaptıysanız, o zaman müthiş. 13 00:00:32,850 --> 00:00:33,650 Onur sana. 14 00:00:33,650 --> 00:00:36,149 Ve hissediyorum eğer ihtiyacınız gibi biraz daha yardım, lütfen 15 00:00:36,149 --> 00:00:38,140 ulaşmak için çekinmeyin TFs herhangi dışarı. 16 00:00:38,140 --> 00:00:40,030 Hepimiz burada yardımcı olmaktır. 17 00:00:40,030 --> 00:00:40,960 Biz öğretmek yüzden >> budur. 18 00:00:40,960 --> 00:00:44,550 Senin için burada her Pazartesi olmamın nedeni budur Perşembe günleri çocuklar ve ofiste saat. 19 00:00:44,550 --> 00:00:48,130 Yani bana bildirin çekinmeyin Eğer bir şey hakkında endişeleriniz varsa 20 00:00:48,130 --> 00:00:52,450 veya quiz eğer bir şey var Bu gerçekten değinmek istiyorum. 21 00:00:52,450 --> 00:00:56,940 >> Peki bugün için gündem tüm veri yapıları hakkında. 22 00:00:56,940 --> 00:01:01,520 Bunlardan bazıları sadece sadece olacak Bu alışmak için. 23 00:01:01,520 --> 00:01:04,870 Hiç uygulamak değil Bu sınıfta onları. 24 00:01:04,870 --> 00:01:08,690 Olacak Bazıları, senin yazım pset için gibi. 25 00:01:08,690 --> 00:01:11,380 >> Siz seçim olacak karma tablolar ve deneme arasında. 26 00:01:11,380 --> 00:01:13,680 Bu yüzden kesinlikle bu üzerinde gidiyorum. 27 00:01:13,680 --> 00:01:18,690 Bu tür kesinlikle daha olacak Bir üst düzey bölümünün bugün olsa, 28 00:01:18,690 --> 00:01:22,630 çünkü orada onları bir yeri vardır, ve eğer Biz uygulama ayrıntıları gitti 29 00:01:22,630 --> 00:01:26,490 Tüm bunlar, biz olmaz Hatta bağlı listeler yoluyla almak 30 00:01:26,490 --> 00:01:28,520 ve belki de karma tabloları biraz. 31 00:01:28,520 --> 00:01:31,200 >> Yani benimle ayı. 32 00:01:31,200 --> 00:01:33,530 Biz yapıyor olacak değiliz kadar bu zaman kodlama. 33 00:01:33,530 --> 00:01:36,870 Bu konuda herhangi bir sorunuz varsa ya da bunu uygulamaya görmek istiyorum 34 00:01:36,870 --> 00:01:39,260 ya kendiniz deneyin, Ben kesinlikle tavsiye 35 00:01:39,260 --> 00:01:44,250 , study.cs50.net olacak olan Bütün bunların örnekleri vardır. 36 00:01:44,250 --> 00:01:46,400 Benim Powerpoints olacak notları ile biz 37 00:01:46,400 --> 00:01:50,860 Bazı programlama gibi kullanma eğiliminde egzersizleri, özellikle şeyler için 38 00:01:50,860 --> 00:01:55,250 bağlantılı listeler ve ikili gibi ağaçlar yığınları ve ipuçları. 39 00:01:55,250 --> 00:01:59,590 Yani biraz daha yüksek düzeyde, hangi Sizin için güzel olabilir. 40 00:01:59,590 --> 00:02:01,320 Bununla Böylece >> biz başlamak gerekir. 41 00:02:01,320 --> 00:02:03,060 Ve ayrıca, evet-- sınavlar. 42 00:02:03,060 --> 00:02:06,550 Ben sizin kim çoğu düşünüyorum Benim bölüm, sınavlar var 43 00:02:06,550 --> 00:02:12,060 ama herkes ya nedense geliyor size yok, onlar burada ön konum. 44 00:02:12,060 --> 00:02:12,740 >> Peki listeleri bağlantılı. 45 00:02:12,740 --> 00:02:15,650 Gider ben bu tür biliyorum senin sınav öncesi geri. 46 00:02:15,650 --> 00:02:17,940 Bu bir hafta önce oldu Biz bu konuda öğrendim. 47 00:02:17,940 --> 00:02:21,040 Ancak bu durumda, sadece olacak derinlemesine biraz daha gidin. 48 00:02:21,040 --> 00:02:25,900 >> Peki neden biz tercih olabilecek bir Bir dizi üzerinde listesini bağlantılı? 49 00:02:25,900 --> 00:02:27,130 Onları farklı kılan nedir? 50 00:02:27,130 --> 00:02:27,630 Evet? 51 00:02:27,630 --> 00:02:30,464 >> İZLEYİCİ: Bir bağlantılı genişletebilirsiniz Bir dizinin sabit boyutta karşı listesi. 52 00:02:30,464 --> 00:02:31,171 HOPARLÖR 1: Sağ. 53 00:02:31,171 --> 00:02:33,970 Dizi ise boyutu sabit olan bağlantılı liste değişken boyuta sahiptir. 54 00:02:33,970 --> 00:02:36,970 Biz bilmiyoruz Yani nasıl çok biz saklamak istiyoruz, 55 00:02:36,970 --> 00:02:39,880 Bağlantılı bir liste bize büyük veriyor yol yapmak için biz sadece can çünkü 56 00:02:39,880 --> 00:02:43,730 başka bir düğüme eklemek ve eklemek Başka bir düğüm ve başka bir düğüme ekleyin. 57 00:02:43,730 --> 00:02:45,750 Ama ne bir ticaret-off olabilir? 58 00:02:45,750 --> 00:02:49,521 Herkes ticaret-off hatırlıyor mu diziler ve bağlantılı listeler arasında? 59 00:02:49,521 --> 00:02:50,020 Mmhmm? 60 00:02:50,020 --> 00:02:51,460 >> İZLEYİCİ: Sen var tüm yol gitmek 61 00:02:51,460 --> 00:02:53,738 bağlantılı liste içinde Bir listede bir öğe bulmak. 62 00:02:53,738 --> 00:02:55,570 Bir dizide yapabilirsiniz sadece bir eleman bulmak. 63 00:02:55,570 --> 00:02:56,278 >> HOPARLÖR 1: Sağ. 64 00:02:56,278 --> 00:02:57,120 Yani arrays-- ile 65 00:02:57,120 --> 00:02:58,500 >> İZLEYİCİ: [duyulamaz]. 66 00:02:58,500 --> 00:03:01,090 >> HOPARLÖR 1: Dizilerle birlikte, biz var Ne rasgele erişim denir. 67 00:03:01,090 --> 00:03:04,820 İstersek ne demektir Bir listenin şimdiye beşinci noktası 68 00:03:04,820 --> 00:03:07,230 veya beşinci nokta bizim Dizi, biz sadece yakalayabilir. 69 00:03:07,230 --> 00:03:10,440 Bir bağlantılı liste varsa, biz var Doğru, yineleme için? 70 00:03:10,440 --> 00:03:14,020 Yani bir eleman olarak erişme Bir dizi, sabit zaman 71 00:03:14,020 --> 00:03:19,530 it would bağlantılı liste ile ise büyük olasılıkla çünkü belki doğrusal zaman 72 00:03:19,530 --> 00:03:21,370 Bizim eleman sonunda tüm yoludur. 73 00:03:21,370 --> 00:03:23,446 Biz her şeyi ile aramak zorunda. 74 00:03:23,446 --> 00:03:25,320 Tüm bu verilerle Yani Biz gidiyoruz yapılar 75 00:03:25,320 --> 00:03:29,330 biraz daha fazla zaman harcama için, artılar ve negatifleri nelerdir. 76 00:03:29,330 --> 00:03:31,480 Biz isteyebilirsiniz zaman diğer üzerinden birini kullanın? 77 00:03:31,480 --> 00:03:34,970 Ve bu tür büyük şey götürmek için. 78 00:03:34,970 --> 00:03:40,140 >> Yani biz burada var Bir düğümün tanımı. 79 00:03:40,140 --> 00:03:43,040 Bu bir elemanı gibi Bizim bağlantılı liste, değil mi? 80 00:03:43,040 --> 00:03:46,180 Yani hepimiz tanıdık Bizim Typedef yapılar ile, 81 00:03:46,180 --> 00:03:47,980 Biz son kez gözden gitti hangi. 82 00:03:47,980 --> 00:03:53,180 Sadece yaratma Bu temelde biz-ebil kullanma başka bir veri türü. 83 00:03:53,180 --> 00:03:57,930 >> Bu durumda, bir düğümün Bu bazı tamsayı yapacak. 84 00:03:57,930 --> 00:04:00,210 Ve sonra ikinci bölüm burada ne var? 85 00:04:00,210 --> 00:04:03,192 86 00:04:03,192 --> 00:04:05,677 Herkes? 87 00:04:05,677 --> 00:04:06,680 >> İZLEYİCİ: [duyulamaz]. 88 00:04:06,680 --> 00:04:07,020 >> HOPARLÖR 1: Evet. 89 00:04:07,020 --> 00:04:08,400 Bir sonraki düğüme bir işaretçi var. 90 00:04:08,400 --> 00:04:12,610 Yani bu aslında burada olmalı. 91 00:04:12,610 --> 00:04:18,790 Bu tip bir gösterici Bir sonraki şey düğüm. 92 00:04:18,790 --> 00:04:22,410 Ve bu ne var onlar Bizim düğümü kapsar. 93 00:04:22,410 --> 00:04:24,060 Serin. 94 00:04:24,060 --> 00:04:29,390 >> Pekala, biz gibi, arama ile çok sen eğer sadece elden önce diyerek 95 00:04:29,390 --> 00:04:31,840 arama gidiyor, aslında yineleme var 96 00:04:31,840 --> 00:04:33,660 Bağlantılı liste içinde. 97 00:04:33,660 --> 00:04:38,530 Biz numara için arıyorsanız Yani 9, bizim başında başlamak istiyorum 98 00:04:38,530 --> 00:04:41,520 ve o başında bize işaret Bizim bağlantılı liste, değil mi? 99 00:04:41,520 --> 00:04:44,600 Ve tamam, bunu yapar, demek düğüm numarası 9 içeriyor? 100 00:04:44,600 --> 00:04:45,690 Hayır mı? 101 00:04:45,690 --> 00:04:47,500 >> Pekala, bir sonraki gidin. 102 00:04:47,500 --> 00:04:48,312 Bunu takip edin. 103 00:04:48,312 --> 00:04:49,520 Bu sayı 9 içeriyor mu? 104 00:04:49,520 --> 00:04:50,570 Hayır. 105 00:04:50,570 --> 00:04:51,550 Sonraki izleyin. 106 00:04:51,550 --> 00:04:55,490 >> Yani biz aslında yineleme var Bizim bağlantılı liste içinde. 107 00:04:55,490 --> 00:05:00,070 Biz sadece 9 olduğu doğrudan gidemez. 108 00:05:00,070 --> 00:05:05,860 Ve siz gerçekten istiyorsanız Orada bazı sözde kod yukarı bakın. 109 00:05:05,860 --> 00:05:10,420 Biz burada bazı arama fonksiyonu var o içinde sürer ne in-- alır? 110 00:05:10,420 --> 00:05:13,110 111 00:05:13,110 --> 00:05:14,320 Sen ne düşünüyorsun? 112 00:05:14,320 --> 00:05:15,960 Çok kolay bir. 113 00:05:15,960 --> 00:05:17,784 Bu nedir? 114 00:05:17,784 --> 00:05:18,700 HEDEF KİTLE: [duyulamaz]. 115 00:05:18,700 --> 00:05:20,366 HOPARLÖR 1: aradığımız numara. 116 00:05:20,366 --> 00:05:20,980 Doğru? 117 00:05:20,980 --> 00:05:22,875 Ve bu ne tekabül eder? 118 00:05:22,875 --> 00:05:25,020 Bu bir işaretçi değil mi? 119 00:05:25,020 --> 00:05:26,000 >> İZLEYİCİ: Bir düğüm. 120 00:05:26,000 --> 00:05:28,980 >> HOPARLÖR 1: listeye bir düğüm Doğru, bakıyoruz ki? 121 00:05:28,980 --> 00:05:33,700 Bu yüzden bazı düğümler burada gösterici olan var. 122 00:05:33,700 --> 00:05:37,240 Bu gidiyor bir noktadır aslında bizim listede yineleme. 123 00:05:37,240 --> 00:05:39,630 Biz listelemek için eşit set bu sadece çünkü 124 00:05:39,630 --> 00:05:44,380 için eşit ayarı Bizim bağlantılı liste başlar. 125 00:05:44,380 --> 00:05:50,660 >> Ve NULL değil iken, süre biz hala bizim listede şeyler var 126 00:05:50,660 --> 00:05:55,580 Bu düğüm olup olmadığını görmek için kontrol edin Aradığımız sayı. 127 00:05:55,580 --> 00:05:57,740 Gerçek dön. 128 00:05:57,740 --> 00:06:01,070 Aksi takdirde, doğru, güncellemek? 129 00:06:01,070 --> 00:06:04,870 >> NULL ise, biz çıkmak bizim while döngüsü ve return false 130 00:06:04,870 --> 00:06:08,340 anlamına gelir, çünkü biz onu bulamadım. 131 00:06:08,340 --> 00:06:11,048 Herkes nasıl olsun mu? 132 00:06:11,048 --> 00:06:11,548 TAMAM MI. 133 00:06:11,548 --> 00:06:14,940 134 00:06:14,940 --> 00:06:20,260 >> Ekleme ile Peki, üç farklı yol vardır. 135 00:06:20,260 --> 00:06:25,250 Sen ekleyebilirsiniz, Önlerine çeşit çeşit içine ve ekleyebilirsiniz. 136 00:06:25,250 --> 00:06:28,215 Bu durumda, konum Bir prepend yapacağız. 137 00:06:28,215 --> 00:06:33,380 Herkes nasıl bu biliyor mu Üç olgu farklı olabilir? 138 00:06:33,380 --> 00:06:36,920 >> Yani Başa eklenen sen koymak anlamına gelir listenizde önünde. 139 00:06:36,920 --> 00:06:39,770 Yani demek istiyorum ki hiçbir konuda senin düğüm olursa olsun ne 140 00:06:39,770 --> 00:06:43,160 değeri nedir, sen gidiyorsun Tamam, ön sağ buraya koymak için? 141 00:06:43,160 --> 00:06:45,160 İlk olacak Listenizde eleman. 142 00:06:45,160 --> 00:06:49,510 Eğer eklerseniz >> gidiyor Listenizde arkasına gitmek için. 143 00:06:49,510 --> 00:06:54,010 Ve çeşit çeşit sen demek takın yerine aslında koyacaktım 144 00:06:54,010 --> 00:06:57,700 bu tutar nereye bağlantılı liste sıralanır. 145 00:06:57,700 --> 00:07:00,810 Yine, nasıl kullandığınız Bu ve ne zaman kullanmak 146 00:07:00,810 --> 00:07:02,530 onları duruma göre değişir. 147 00:07:02,530 --> 00:07:05,834 148 00:07:05,834 --> 00:07:07,750 Bu gerek yoksa sıralanması, başına eğilimindedir 149 00:07:07,750 --> 00:07:10,460 Ne çoğu insan olmak değil çünkü kullanmak 150 00:07:10,460 --> 00:07:15,680 Tüm liste üzerinden gitmek zorunda Doğru, onu eklemek için sonuna bulmak için? 151 00:07:15,680 --> 00:07:17,720 Siz sadece doğru bunu sopa. 152 00:07:17,720 --> 00:07:21,930 >> Bu yüzden bir ile gidecek Ekleme 1 şimdi. 153 00:07:21,930 --> 00:07:26,360 Ben gidiyorum Yani bir şey çok bu pset üzerinde tavsiye 154 00:07:26,360 --> 00:07:29,820 Her zaman olduğu gibi, şeyler çekmektir. 155 00:07:29,820 --> 00:07:35,130 Eğer güncellemeniz çok önemlidir Doğru sırayla işaretçileri 156 00:07:35,130 --> 00:07:38,620 Eğer bunları güncelleştirmek çünkü eğer biraz bozuk, 157 00:07:38,620 --> 00:07:42,210 Eğer sonuna kadar gidiyoruz Listenizde parçaları kaybetme. 158 00:07:42,210 --> 00:07:49,680 >> Bu nedenle, örneğin, bu durumda biz konum 1 sadece noktaya başını söylüyorum. 159 00:07:49,680 --> 00:07:56,070 Biz sadece yaparsak Bu 1 kaydetmeden, 160 00:07:56,070 --> 00:07:58,570 hiçbir fikrim yok ne 1 şimdi işaret etmelidir 161 00:07:58,570 --> 00:08:02,490 Kaybettiğimiz çünkü ne Baş işaret etti. 162 00:08:02,490 --> 00:08:05,530 Yani bir şey hatırlamak ne zaman bir prepend yapıyoruz 163 00:08:05,530 --> 00:08:09,630 ne kaydetmek için İlk kafa noktaları, 164 00:08:09,630 --> 00:08:15,210 sonra yeniden atamak ve ardından güncelleme ne yeni bir düğüm işaret etmelidir. 165 00:08:15,210 --> 00:08:20,870 166 00:08:20,870 --> 00:08:22,560 Bu durumda, bu bunu yapmak için tek yoldur. 167 00:08:22,560 --> 00:08:25,440 >> Biz bu şekilde yapmıştı Yani nerede biz sadece, kafa yeniden 168 00:08:25,440 --> 00:08:30,320 biz temelde bizim, kaybetmek Tüm liste, değil mi? 169 00:08:30,320 --> 00:08:38,000 Bunu yapmak için bir yolu 1 puan sahip olmaktır Bir sonraki ve daha sonra 1 baş noktası var. 170 00:08:38,000 --> 00:08:42,650 Yoksa böyle bir tür yapabilirsiniz Ben hakkında konuştuk geçici depolama. 171 00:08:42,650 --> 00:08:45,670 >> Ama, sizin yeniden atama Doğru sırayla işaretçileri 172 00:08:45,670 --> 00:08:48,750 çok, çok olacak Bu pset için de gereklidir. 173 00:08:48,750 --> 00:08:53,140 Aksi takdirde, bir karma için gidiyoruz tablo ya da sadece olacak bir deneyin 174 00:08:53,140 --> 00:08:56,014 kelimelerin sadece bir parçası olduğunu sen Sen-- mmhmm sonra istiyor ve? 175 00:08:56,014 --> 00:08:58,930 HEDEF KİTLE: Geçici neydi Depolama şey bahsediyorduk? 176 00:08:58,930 --> 00:09:00,305 HOPARLÖR 1: Geçici depolama. 177 00:09:00,305 --> 00:09:02,760 Yani temelde başka Eğer bu yapabileceğini yolu 178 00:09:02,760 --> 00:09:07,650 gibi bir şey başkanı saklamanız o geçici değişken saklayın. 179 00:09:07,650 --> 00:09:11,250 1 olarak atayın ve Daha sonra işaret 1 güncelleme 180 00:09:11,250 --> 00:09:13,830 ne olursa olsun baş işaret için kullanılır. 181 00:09:13,830 --> 00:09:16,920 Bu şekilde tabii ki daha şık size çünkü 182 00:09:16,920 --> 00:09:20,770 Geçici bir değer gerekiyor, ama yok Sadece bunu yapmak için başka bir yol sunar. 183 00:09:20,770 --> 00:09:23,999 184 00:09:23,999 --> 00:09:25,790 Ve aslında var Bunun için bazı kod. 185 00:09:25,790 --> 00:09:28,080 Bağlantılı listeye Yani, biz Aslında bazı kod var. 186 00:09:28,080 --> 00:09:31,930 Yani bu prepending, buradan yerleştirin. 187 00:09:31,930 --> 00:09:34,290 Yani bu başında o girer. 188 00:09:34,290 --> 00:09:38,820 >> Peki ilk şey, size gerekir Elbette, yeni düğüm oluşturun, 189 00:09:38,820 --> 00:09:40,790 ve NULL kontrol edin. 190 00:09:40,790 --> 00:09:43,250 Her zaman iyi. 191 00:09:43,250 --> 00:09:47,840 Ve sonra değerleri atamak gerekir. 192 00:09:47,840 --> 00:09:51,260 Ne zaman, size yeni bir düğüm oluşturun sonraki işaret ne bilmiyorum, 193 00:09:51,260 --> 00:09:54,560 böylece NULL için başlatmak istiyorum. 194 00:09:54,560 --> 00:09:58,760 O bir şey işaret sona yoksa Başka, bu yeniden ve bunu gayet iyi olur. 195 00:09:58,760 --> 00:10:00,740 Ilk şey ise Listede, ihtiyacı 196 00:10:00,740 --> 00:10:04,270 Çünkü NULL işaret etmek Bu listenin sonu. 197 00:10:04,270 --> 00:10:12,410 >> Öyleyse eklemek için, biz burada görmek Bizim düğümün sonraki değeri atama 198 00:10:12,410 --> 00:10:17,380 başıdır ne olmak, hangi biz burada vardı ne. 199 00:10:17,380 --> 00:10:19,930 Yani biz sadece yaptığımız buydu. 200 00:10:19,930 --> 00:10:25,820 Ve sonra noktaya başını atıyorsanız Yeni düğüm, hatırlıyorum çünkü, 201 00:10:25,820 --> 00:10:31,090 yeni bir düğüme bazı göstericidir ve bu tam olarak baş budur. 202 00:10:31,090 --> 00:10:34,370 Bu tam olarak neden biz ise Bu ok erişimcisine var. 203 00:10:34,370 --> 00:10:37,030 204 00:10:37,030 --> 00:10:37,530 Serin? 205 00:10:37,530 --> 00:10:38,130 Mmhmm? 206 00:10:38,130 --> 00:10:41,100 >> İZLEYİCİ: biz var mı İlk NULL YENİ Sonraki başlatmak, 207 00:10:41,100 --> 00:10:44,240 ya da biz sadece kafa için başlatılamıyor? 208 00:10:44,240 --> 00:10:48,210 >> HOPARLÖR 1: Bir sonraki Yeni başlatmak için NULL olması gerekir 209 00:10:48,210 --> 00:10:53,760 Eğer bilmiyorum çünkü nerede olacak. 210 00:10:53,760 --> 00:10:56,100 Ayrıca, bu tür bir Sadece bir paradigma gibi. 211 00:10:56,100 --> 00:10:59,900 Bunu NULL eşit adil yapmak için ayarlanır emin tüm üsleri kapalı olduğu 212 00:10:59,900 --> 00:11:04,070 Eğer ki herhangi bir atanmakla yapmadan önce Eğer her zaman olacak garanti ediyoruz 213 00:11:04,070 --> 00:11:08,880 belirli bir değere işaret olabilir Bir çöp değer gibi karşı. 214 00:11:08,880 --> 00:11:12,210 Evet, biz atamak, Çünkü otomatik olarak bir sonraki yeni, 215 00:11:12,210 --> 00:11:15,420 ama sadece bir gibi daha var iyi uygulama bunu başlatmak için 216 00:11:15,420 --> 00:11:19,270 bu şekilde ve daha sonra yeniden atayın. 217 00:11:19,270 --> 00:11:23,420 >> Tamam, bu yüzden iki kat şimdi listeleri bağlantılı. 218 00:11:23,420 --> 00:11:24,601 Ne düşünüyorsunuz? 219 00:11:24,601 --> 00:11:26,350 Ne ile farklı çift ​​listeleri bağlantılı? 220 00:11:26,350 --> 00:11:30,750 221 00:11:30,750 --> 00:11:34,300 >> Bizim bağlı listelerde Yani, biz Sadece doğru, tek yönde hareket? 222 00:11:34,300 --> 00:11:35,270 Biz sadece bir sonraki var. 223 00:11:35,270 --> 00:11:36,760 Biz sadece ileriye gidebiliriz. 224 00:11:36,760 --> 00:11:40,300 >> Bir çift bağlantılı liste ile, biz de geriye doğru hareket edebilir. 225 00:11:40,300 --> 00:11:44,810 Bu yüzden sadece var Biz saklamak istediğiniz sayı, 226 00:11:44,810 --> 00:11:50,110 sonraki işaret nerede var ve biz sadece nereden geldiğini. 227 00:11:50,110 --> 00:11:52,865 Yani bu sağlar biraz daha iyi kastetmek. 228 00:11:52,865 --> 00:11:56,620 229 00:11:56,620 --> 00:12:01,240 >> Yani çift bağlı düğüm çok benzer, değil mi? 230 00:12:01,240 --> 00:12:05,000 Tek fark, biz şimdi Bir sonraki ve bir önceki var. 231 00:12:05,000 --> 00:12:06,235 Sadece fark bu. 232 00:12:06,235 --> 00:12:09,570 233 00:12:09,570 --> 00:12:14,790 >> Bu yüzden prepend veya biz append-- olsaydı ötürü-- bunun için herhangi bir kodu yok 234 00:12:14,790 --> 00:12:17,830 ama denemek olsaydı ve önemli bir şey takın 235 00:12:17,830 --> 00:12:19,980 Yapmanız gereken ise emin atıyorsanız 236 00:12:19,980 --> 00:12:23,360 hem senin, önceki ve hesabınızla Doğru sonraki işaretçi. 237 00:12:23,360 --> 00:12:29,010 Yani bu durumda, olur sadece bir sonraki başlatılamadı, 238 00:12:29,010 --> 00:12:31,820 Önceki başlatılamıyor. 239 00:12:31,820 --> 00:12:36,960 Biz listenin başında iseniz, biz Baş eşit yeni yapacağı değil, sadece, 240 00:12:36,960 --> 00:12:41,750 ama bizim yeni bir önceki gerekir Doğru, baş işaret? 241 00:12:41,750 --> 00:12:43,380 >> Bu sadece fark bu. 242 00:12:43,380 --> 00:12:47,200 Ve daha pratik istiyorsanız yerleştirme ile bağlantılı listeler, bu, 243 00:12:47,200 --> 00:12:49,900 insert ile, silerek Bir çeşit çeşit listesine, 244 00:12:49,900 --> 00:12:52,670 study.cs50.net kontrol ediniz. 245 00:12:52,670 --> 00:12:54,870 Büyük egzersizleri bir grup var. 246 00:12:54,870 --> 00:12:55,870 Bunları tavsiye ederim. 247 00:12:55,870 --> 00:12:59,210 Ben onlara geçmesi için zaman olsaydı ama veri yapılarının bir çok şey var 248 00:12:59,210 --> 00:13:01,530 aracılığıyla almak için. 249 00:13:01,530 --> 00:13:02,650 >> Tamam, karma tabloları yüzden. 250 00:13:02,650 --> 00:13:07,070 Bu muhtemelen en çok hakkında pset için yararlı biti 251 00:13:07,070 --> 00:13:11,090 Burada olmak için gidiyoruz çünkü Bunlardan birini, ya da bir deneyin uygulanması. 252 00:13:11,090 --> 00:13:12,200 Ben gerçekten hash tabloları seviyorum. 253 00:13:12,200 --> 00:13:13,110 Onlar oldukça serin olduğunu. 254 00:13:13,110 --> 00:13:17,080 >> Yani temelde ne olur bir karma tablo 255 00:13:17,080 --> 00:13:22,050 biz gerçekten hızlı ihtiyacım olduğunda ekleme, silme ve arama. 256 00:13:22,050 --> 00:13:25,010 Bu bizim konum şeyleri vardır bir karma tablo öncelik. 257 00:13:25,010 --> 00:13:29,500 Onlar, oldukça büyük alabilirsiniz ama biz denemeden ile göreceğimiz gibi, 258 00:13:29,500 --> 00:13:33,040 çok daha büyük şeyler vardır. 259 00:13:33,040 --> 00:13:38,330 >> Ama temelde, bütün bir karma tablo karma işlevi 260 00:13:38,330 --> 00:13:47,215 her koymak hangi kova söyler verilerinizin, sizin elemanların her biri. 261 00:13:47,215 --> 00:13:51,140 Basit bir yolu, bir karma tablo düşünmek şeylerin sadece kovalar olmasıdır, 262 00:13:51,140 --> 00:13:51,770 değil mi? 263 00:13:51,770 --> 00:13:59,720 Güvenebileceğiniz şeyler sıralama vardır Peki ne zaman kendi adının ilk harfi gibi, 264 00:13:59,720 --> 00:14:01,820 Bu tür bir karma tablo gibi. 265 00:14:01,820 --> 00:14:06,180 Ben grup olsaydı Yani >> siz olduğunu 's isim başlar kim gruplar halinde 266 00:14:06,180 --> 00:14:11,670 Burada bir ile, ya da doğum günü kim var Ocak, Şubat, Mart ayında ise 267 00:14:11,670 --> 00:14:15,220 ne olursa olsun, bu etkili bir olduğunu Bir karma tablo oluşturma. 268 00:14:15,220 --> 00:14:18,120 Sadece kovaları yaratıyor ki Eğer içine öğeleri sıralamak 269 00:14:18,120 --> 00:14:19,520 Eğer onları daha kolay bulabilirsiniz böylece. 270 00:14:19,520 --> 00:14:22,300 Ben gerekir bu yolla Yani Senin birini bulmak için, 271 00:14:22,300 --> 00:14:24,680 Ben aramak zorunda değilsiniz senin isimlerin her biri ile. 272 00:14:24,680 --> 00:14:29,490 Oh gibi olabilir, ben biliyorum Danielle doğum günü in-- olduğunu 273 00:14:29,490 --> 00:14:30,240 HEDEF KİTLE: --April. 274 00:14:30,240 --> 00:14:30,948 HOPARLÖR 1: Nisan. 275 00:14:30,948 --> 00:14:33,120 Yani benim Nisan bakmak kova ve herhangi bir şans ile, 276 00:14:33,120 --> 00:14:38,270 o sadece bir tane olacak ve Benim zaman, bu anlamda sürekli oldu 277 00:14:38,270 --> 00:14:41,230 Ben bakmak varsa oysa insanlar bir sürü ile, 278 00:14:41,230 --> 00:14:43,090 çok daha uzun zaman alacak. 279 00:14:43,090 --> 00:14:45,830 Yani hash tabloları gerçekten sadece kovalar. 280 00:14:45,830 --> 00:14:48,630 Kolay bir şekilde onları düşünmek. 281 00:14:48,630 --> 00:14:52,930 Hakkında >> Yani çok önemli bir şey Bir karma tablo karma fonksiyonudur. 282 00:14:52,930 --> 00:14:58,140 Yani işler Ben gibi, hakkında konuştuk İlk adının ilk mektup 283 00:14:58,140 --> 00:15:01,450 ya da doğum ay, Bu fikirler olduğunu 284 00:15:01,450 --> 00:15:03,070 Gerçekten bir karma işlev ile bağlantılıdır. 285 00:15:03,070 --> 00:15:08,900 Bu karar sadece bir yolu var ki Tamam, konum eleman gider kova? 286 00:15:08,900 --> 00:15:14,850 Yani bu pset için, yukarı bakabilirsiniz İstediğiniz herhangi bir hash fonksiyonu oldukça fazla. 287 00:15:14,850 --> 00:15:16,030 >> Kendi olmak zorunda değil. 288 00:15:16,030 --> 00:15:21,140 Bazı gerçekten harika olanları vardır çılgın matematik her türlü orada yapmak olduğunu. 289 00:15:21,140 --> 00:15:25,170 Ve sen, sizin yapmak istiyorsanız süper hızlı imla kontrolü, 290 00:15:25,170 --> 00:15:27,620 Ben kesinlikle olur Bunlardan birine bakmak. 291 00:15:27,620 --> 00:15:32,390 >> Ama aynı zamanda orada hesaplamak gibi basit olanlar, 292 00:15:32,390 --> 00:15:39,010 kelimelerin, toplamı gibi Her harf bir numarası vardır. 293 00:15:39,010 --> 00:15:39,940 Toplamını hesaplayın. 294 00:15:39,940 --> 00:15:42,230 O kovayı belirler. 295 00:15:42,230 --> 00:15:45,430 Onlar da kolay olanları var Sadece bir buradan tüm gibidir, 296 00:15:45,430 --> 00:15:47,050 B hepsi burada. 297 00:15:47,050 --> 00:15:48,920 Bunlardan herhangi biri. 298 00:15:48,920 --> 00:15:55,770 >> Temelde, sadece size söyler hangi dizi indeksi içine gitmeli senin eleman. 299 00:15:55,770 --> 00:15:58,690 Sadece bucket-- karar hepsi bir hash fonksiyonu olduğunu var. 300 00:15:58,690 --> 00:16:04,180 Yani burada biz bir örnek var dize sadece ilk harf 301 00:16:04,180 --> 00:16:05,900 ben sadece bahsediyordum. 302 00:16:05,900 --> 00:16:11,900 >> Yani sadece var bazı karma var dize eksi A ilk harfi, 303 00:16:11,900 --> 00:16:16,090 bazı verecek olan 0 ile 25 arasında sayı. 304 00:16:16,090 --> 00:16:20,790 Ve ne yapmak istiyorum Bu temsil emin olun 305 00:16:20,790 --> 00:16:24,110 senin karma boyutu table-- Kaç kovalar vardır. 306 00:16:24,110 --> 00:16:25,860 Bu birçok ile hash fonksiyonları, onlar 307 00:16:25,860 --> 00:16:31,630 gidiş o olabilir değerler iade edilecek çok kovalar sayısının üzerinde olması 308 00:16:31,630 --> 00:16:33,610 aslında var senin karma tablo, 309 00:16:33,610 --> 00:16:37,240 böylece yapmak gerekir Emin ve kişiler tarafından mod. 310 00:16:37,240 --> 00:16:42,190 Aksi takdirde, söyleyecek, oh, bu kova 5.000 olmalıdır 311 00:16:42,190 --> 00:16:46,040 ama sadece 30 var senin karma tablo kovalar. 312 00:16:46,040 --> 00:16:49,360 Ve tabii ki, hepimiz biliyoruz Bazı çılgın hatalara neden olacak. 313 00:16:49,360 --> 00:16:52,870 Yani tarafından mod emin olun senin karma tablo boyutu. 314 00:16:52,870 --> 00:16:58,430 315 00:16:58,430 --> 00:16:58,930 Serin. 316 00:16:58,930 --> 00:17:00,506 Çarpışmalar Yani. 317 00:17:00,506 --> 00:17:02,620 Herkes kadar iyi midir? 318 00:17:02,620 --> 00:17:03,120 Mmhmm? 319 00:17:03,120 --> 00:17:05,900 >> İZLEYİCİ: Neden olur Böyle büyük bir değer döndürür? 320 00:17:05,900 --> 00:17:09,210 >> HOPARLÖR 1: algoritmasına bağlı olarak senin hash fonksiyonu kullanır. 321 00:17:09,210 --> 00:17:12,270 Bazıları yapacak çılgın çarpma. 322 00:17:12,270 --> 00:17:16,270 Ve alma hakkında hepsi Bir hatta dağıtım, 323 00:17:16,270 --> 00:17:18,490 bu yüzden gerçekten bazı şeyleri bazen çılgınca şeyler. 324 00:17:18,490 --> 00:17:20,960 Hepsi bu. 325 00:17:20,960 --> 00:17:22,140 Başka herhangi bir şey? 326 00:17:22,140 --> 00:17:22,829 TAMAM MI. 327 00:17:22,829 --> 00:17:24,480 >> Çarpışmalar Yani. 328 00:17:24,480 --> 00:17:29,270 Temelde, daha önce söylediğim gibi, En iyi senaryoya göre, 329 00:17:29,270 --> 00:17:32,040 Ben içine bakmak herhangi bir kova bir şey olacak, 330 00:17:32,040 --> 00:17:34,160 bu yüzden doğru, hiç bakmak zorunda değilsiniz? 331 00:17:34,160 --> 00:17:37,040 Ben de orada olduğunu biliyorum ya da var değil, ve biz gerçekten ne istediğinizi. 332 00:17:37,040 --> 00:17:43,960 Ama biz on binlerce varsa veri noktaları ve bu sayı daha az 333 00:17:43,960 --> 00:17:48,700 kovalar, biz gidiyoruz çarpışmalar nerede sonunda bir şey 334 00:17:48,700 --> 00:17:54,210 Bir de sonuna kadar sahip oluyor Zaten bir unsuru vardır kova. 335 00:17:54,210 --> 00:17:57,390 >> Yani soru, ne biz bu durumda yaparsınız? 336 00:17:57,390 --> 00:17:58,480 Ne yapacağız? 337 00:17:58,480 --> 00:17:59,300 Biz zaten orada bir şey var mı? 338 00:17:59,300 --> 00:18:00,060 Biz sadece dışarı atmak mı? 339 00:18:00,060 --> 00:18:00,700 >> Hayır 340 00:18:00,700 --> 00:18:01,980 Biz ikisini de tutmak zorunda. 341 00:18:01,980 --> 00:18:06,400 Yani yol ki tipik olarak ne yapmak? 342 00:18:06,400 --> 00:18:08,400 Veri yapısı nedir biz sadece konuştuk? 343 00:18:08,400 --> 00:18:09,316 HEDEF KİTLE: Bağlantılı listesi. 344 00:18:09,316 --> 00:18:10,500 HOPARLÖR 1: Bir bağlantılı liste. 345 00:18:10,500 --> 00:18:16,640 Yani şimdi, yerine bu her kovalar sadece bir elemanı olan 346 00:18:16,640 --> 00:18:24,020 o bir bağlantılı liste içeren gidiyor içine karma edildi unsurlar. 347 00:18:24,020 --> 00:18:27,588 Tamam, herkes tür fikrini alır? 348 00:18:27,588 --> 00:18:30,546 Biz bir dizi var olamazdı, çünkü Biz ne çok şey bilmiyorum çünkü 349 00:18:30,546 --> 00:18:31,730 Orada olacak. 350 00:18:31,730 --> 00:18:36,540 Bağlantılı liste için bize izin verir sadece tam sayı olması 351 00:18:36,540 --> 00:18:38,465 Doğru, o kovaya karma edilir? 352 00:18:38,465 --> 00:18:42,260 353 00:18:42,260 --> 00:18:50,500 >> Peki doğrusal sondalama olduğunu temelde bu iyi düşünce 354 00:18:50,500 --> 00:18:52,300 Bir çarpışma ile başa çıkmak için tek yolu. 355 00:18:52,300 --> 00:18:58,010 Ne yapabilirim bu, eğer bir durumda, dut 1 içine karma edildi 356 00:18:58,010 --> 00:19:01,130 ve biz zaten var bir şey var, sadece 357 00:19:01,130 --> 00:19:04,840 kadar aşağı devam Boş bir yuva bulmak. 358 00:19:04,840 --> 00:19:06,370 İşte bu işlemek için tek yoldur. 359 00:19:06,370 --> 00:19:09,020 işlemek için başka bir yol onunla ne biz sadece 360 00:19:09,020 --> 00:19:12,280 bağlantılı called-- Liste zincirleme denir. 361 00:19:12,280 --> 00:19:20,510 >> Yani bu fikir çalışır Sizce sizin karma tablo 362 00:19:20,510 --> 00:19:24,150 çok daha büyüktür veri ayarlamak veya eğer 363 00:19:24,150 --> 00:19:28,870 deneyin ve zincirleme en aza indirmek istiyorum kesinlikle gerekli olana kadar. 364 00:19:28,870 --> 00:19:34,050 Yani bir şey lineer Açıkçası demektir sondalama 365 00:19:34,050 --> 00:19:37,290 senin hash fonksiyonu olduğunu oldukça kullanışlı değil 366 00:19:37,290 --> 00:19:42,200 Kullandığınız sonuna kadar gidiyoruz çünkü senin karma işlevi, bir noktaya almak, 367 00:19:42,200 --> 00:19:46,400 Eğer aşağı soruşturma doğrusal Mevcut bazı yer. 368 00:19:46,400 --> 00:19:49,670 Ama şimdi, tabii, bir şey , orada biter başka 369 00:19:49,670 --> 00:19:52,050 Eğer zorunda gidiyoruz daha aşağı arama. 370 00:19:52,050 --> 00:19:55,650 >> Ve daha bir çok var Arama gider o 371 00:19:55,650 --> 00:19:59,820 Bir eleman girerek gider Şimdi karma tablo, değil mi? 372 00:19:59,820 --> 00:20:05,640 Ve şimdi gidip çalışın ve bulduğunuzda berry tekrar bunu karma gidiyoruz, 373 00:20:05,640 --> 00:20:07,742 ve o söyleyecek oh, kova 1 bakmak, 374 00:20:07,742 --> 00:20:09,700 ve olacak değil kova 1, bu yüzden sen 375 00:20:09,700 --> 00:20:11,970 çapraz zorunda olacak Bu geri kalanı ile. 376 00:20:11,970 --> 00:20:17,720 Bu yüzden, bazen yararlıdır ancak çoğu durumda, 377 00:20:17,720 --> 00:20:22,660 Biz söylemek için gidiyoruz zincirleme yapmak istediğiniz şeydir. 378 00:20:22,660 --> 00:20:25,520 >> Peki bu daha önce konuştuk. 379 00:20:25,520 --> 00:20:27,812 Kendime küçük bir ahead var. 380 00:20:27,812 --> 00:20:33,560 Ama zincirleme temelde olduğunu senin karma tablo her kova 381 00:20:33,560 --> 00:20:36,120 Sadece bir bağlantılı liste. 382 00:20:36,120 --> 00:20:39,660 >> Peki başka bir yol, ya da daha teknik yol, bir karma tablo düşünmek 383 00:20:39,660 --> 00:20:44,490 sadece bir dizi olmasıdır bağlantılı listeler, hangi 384 00:20:44,490 --> 00:20:49,330 ne zaman sözlüğü yazıyoruz ve bunu yüklemek için çalışıyoruz, 385 00:20:49,330 --> 00:20:52,070 Bir şekilde bunu düşünme bağlantılı listeler dizisi 386 00:20:52,070 --> 00:20:54,390 çok daha kolay hale getirecek Başlatmak için. 387 00:20:54,390 --> 00:20:57,680 >> İZLEYİCİ: Yani karma tablo önceden tespit edilmiş bir büyüklüğe sahip olan 388 00:20:57,680 --> 00:20:58,980 kovalar bir [Inaudible] gibi? 389 00:20:58,980 --> 00:20:59,220 >> HOPARLÖR 1: Sağ. 390 00:20:59,220 --> 00:21:01,655 Bu yüzden bir dizi numarası vardır Eğer determine-- kovalar 391 00:21:01,655 --> 00:21:03,530 hangi çocuklar gerektiğini ile oynamak için çekinmeyin. 392 00:21:03,530 --> 00:21:05,269 Bu oldukça serin olabilir ne olacağını görmek için 393 00:21:05,269 --> 00:21:06,810 Eğer kova sizin sayısını değiştirmek gibi. 394 00:21:06,810 --> 00:21:09,410 395 00:21:09,410 --> 00:21:11,510 Ama evet, sahip olduğu bir kovalar set sayısı. 396 00:21:11,510 --> 00:21:15,360 Ne kadar uyum sağlar İhtiyacınız kadar birçok unsurlar 397 00:21:15,360 --> 00:21:19,350 Bu ayrı zincirleme nereye olduğunu Her kova listeleri bağlantılı olması. 398 00:21:19,350 --> 00:21:22,850 Bu senin karma tablo anlamına gelir tam boyut olacak 399 00:21:22,850 --> 00:21:25,440 Eğer doğru olmasını gerektiğini? 400 00:21:25,440 --> 00:21:27,358 Yani bağlantılı listelerin bütün mesele bu. 401 00:21:27,358 --> 00:21:30,850 402 00:21:30,850 --> 00:21:32,480 Serin. 403 00:21:32,480 --> 00:21:38,780 >> Orada Böylece herkes tamam? 404 00:21:38,780 --> 00:21:39,801 Tamam. 405 00:21:39,801 --> 00:21:40,300 Ah. 406 00:21:40,300 --> 00:21:41,860 Ne oldu? 407 00:21:41,860 --> 00:21:42,960 Gerçekten şimdi. 408 00:21:42,960 --> 00:21:45,250 Biri beni öldürüyor sanırım. 409 00:21:45,250 --> 00:21:52,060 >> Tamam biz gitmek için gidiyoruz Biraz deli çalışır. 410 00:21:52,060 --> 00:21:53,140 Ben hash tabloları seviyorum. 411 00:21:53,140 --> 00:21:54,460 Ben onlar gerçekten harika olduğunu düşünüyorum. 412 00:21:54,460 --> 00:21:56,710 Denemeleri çok serin. 413 00:21:56,710 --> 00:21:59,590 >> Yani herkes bir deneyin ne hatırlıyor mu? 414 00:21:59,590 --> 00:22:01,740 Sen üzerine gitmiş olmalı kısaca derste? 415 00:22:01,740 --> 00:22:04,570 416 00:22:04,570 --> 00:22:06,377 Eğer nasıl çalıştığını tür hatırlıyor musunuz? 417 00:22:06,377 --> 00:22:08,460 HEDEF KİTLE: Ben sadece başını sallayarak ediyorum Biz bitti gitti ki. 418 00:22:08,460 --> 00:22:09,626 HOPARLÖR 1: Biz bitti gidin. 419 00:22:09,626 --> 00:22:13,100 Tamam, biz gerçekten gitmek için gidiyoruz şimdi olduğu üzerinde biz dediklerini. 420 00:22:13,100 --> 00:22:14,860 >> İZLEYİCİ: Bu bir alma ağacı var. 421 00:22:14,860 --> 00:22:15,280 >> HOPARLÖR 1: Evet. 422 00:22:15,280 --> 00:22:16,196 Bu bir alma ağacı. 423 00:22:16,196 --> 00:22:16,960 Korku. 424 00:22:16,960 --> 00:22:23,610 Yani burada fark bir şey olduğunu biz bireysel karakter bakıyorsun 425 00:22:23,610 --> 00:22:24,480 Burada, değil mi? 426 00:22:24,480 --> 00:22:29,710 >> Yani birlikte önce hash fonksiyonu, biz Bir bütün olarak kelime aradılar, 427 00:22:29,710 --> 00:22:32,270 ve şimdi daha arıyoruz karakter, değil mi? 428 00:22:32,270 --> 00:22:38,380 Yani biz burada ve Mendel üzerinde Maxwell var. 429 00:22:38,380 --> 00:22:47,840 Yani temelde bir try-- bir yol düşünmek Bu konuda her seviyede burada 430 00:22:47,840 --> 00:22:49,000 harflerin bir dizidir. 431 00:22:49,000 --> 00:22:53,310 432 00:22:53,310 --> 00:22:55,790 Yani bu kök düğüm doğru, burada mı? 433 00:22:55,790 --> 00:23:01,980 Bu bütün karakterler var Her kelimenin başlangıcı için alfabe. 434 00:23:01,980 --> 00:23:06,480 >> Ve ne yapmak istiyorum diyelim ki, tamam, biz bazı M kelime var. 435 00:23:06,480 --> 00:23:10,590 Biz Maxwell aramaya gidiyoruz, bu yüzden konum Biz bütün M. Ve M noktalara gitmek 436 00:23:10,590 --> 00:23:14,800 Diğer bir dizi her yerde sürece orada kelime, 437 00:23:14,800 --> 00:23:17,044 A olan bir kelimedir İkinci mektup gibi, 438 00:23:17,044 --> 00:23:19,460 sürece bir kelime orada olduğu gibi İkinci mektup gibi B vardır, 439 00:23:19,460 --> 00:23:24,630 Bir işaretçi olacak Bazı sonraki diziye gidiyor. 440 00:23:24,630 --> 00:23:29,290 >> Muhtemelen bile yok kelimesi MP şey, 441 00:23:29,290 --> 00:23:32,980 Bu P konumunda yani Dizi, sadece null olur. 442 00:23:32,980 --> 00:23:38,840 Hiçbir kelime yoktur, tamam, derdi Bu M Tamam, bir P tarafından takip etti? 443 00:23:38,840 --> 00:23:43,100 Yani biz bu, her biri hakkında düşünüyorsanız Bu küçük şeylerden biri 444 00:23:43,100 --> 00:23:47,990 Aslında bunlardan biridir Z. aracılığıyla A büyük diziler 445 00:23:47,990 --> 00:23:55,064 Yani şeylerden biri ne olabilir bir deneyin bir dezavantajı tür? 446 00:23:55,064 --> 00:23:56,500 >> İZLEYİCİ: belleğin bir sürü. 447 00:23:56,500 --> 00:23:59,940 >> HOPARLÖR 1: Sağ, belleğin bir ton var? 448 00:23:59,940 --> 00:24:08,750 Burada bu blokların her biri 26 boşluk, 26 eleman dizisini temsil eder. 449 00:24:08,750 --> 00:24:13,680 Yani çalışır uzay ağır inanılmaz olsun. 450 00:24:13,680 --> 00:24:17,100 >> Ama çok hızlı. 451 00:24:17,100 --> 00:24:22,540 Yani inanılmaz hızlı ama Gerçekten uzay verimsiz. 452 00:24:22,540 --> 00:24:24,810 Tür anlamaya var hangisinin istediğiniz. 453 00:24:24,810 --> 00:24:29,470 Bunlar, sizin pset için gerçekten harika ama onlar bellekte bir sürü almak yapmak, 454 00:24:29,470 --> 00:24:30,290 böylece kapalı ticaret. 455 00:24:30,290 --> 00:24:31,480 Evet? 456 00:24:31,480 --> 00:24:34,300 >> İZLEYİCİ: bu mümkün olabilir mi Daha sonra bir deneyin kurmak ve 457 00:24:34,300 --> 00:24:37,967 Eğer bir kez tüm Eğer need-- that veri 458 00:24:37,967 --> 00:24:39,550 Mantıklı olurdu bilmiyorum. 459 00:24:39,550 --> 00:24:42,200 Ben kurtulmak oldu tüm NULL karakter, ama sonra 460 00:24:42,200 --> 00:24:42,910 Eğer endeks them-- mümkün olmaz 461 00:24:42,910 --> 00:24:43,275 >> HOPARLÖR 1: Hala onlara ihtiyacımız var. 462 00:24:43,275 --> 00:24:44,854 >> İZLEYİCİ: - aynı şekilde her zaman. 463 00:24:44,854 --> 00:24:45,520 HOPARLÖR 1: Evet. 464 00:24:45,520 --> 00:24:50,460 Sen izin boş karakter gerekir Orada bir kelime yok eğer bilirsin. 465 00:24:50,460 --> 00:24:52,040 Eğer istediğiniz bir şey var Ben mı? 466 00:24:52,040 --> 00:24:52,540 TAMAM MI. 467 00:24:52,540 --> 00:24:54,581 Pekala, bu yüzden gidiyoruz Biraz daha gitmek 468 00:24:54,581 --> 00:24:58,920 arkasında teknik detaya Bir deneyin ve bir örnek üzerinde çalışalım. 469 00:24:58,920 --> 00:25:01,490 >> Tamam, bu yüzden bu aynı şeydir. 470 00:25:01,490 --> 00:25:06,290 Bağlantılı bir listede, Bizim ana Oysa ? tür of-- istediğim kelime ne - 471 00:25:06,290 --> 00:25:08,350 blok bina gibi bir düğüm oldu. 472 00:25:08,350 --> 00:25:12,280 Bir deneyin, biz de, bir düğüm var ama farklı tanımlanmış oluyor. 473 00:25:12,280 --> 00:25:17,000 >> Bu yüzden bazı bool var Bir kelime olsun aslında temsil 474 00:25:17,000 --> 00:25:23,530 Bu konumda bulunmaktadır, ve sonra biz ötürü-- doğrusu bazı dizi var 475 00:25:23,530 --> 00:25:27,840 Bu bir bir gösterici 27 karakter dizisi. 476 00:25:27,840 --> 00:25:33,339 Ve bu, bu durumda, içindir 27-- Hepinize gibi eminim, bekle 477 00:25:33,339 --> 00:25:34,880 alfabede 26 harf vardır. 478 00:25:34,880 --> 00:25:36,010 Neden 27 var mı? 479 00:25:36,010 --> 00:25:37,870 >> Yani bağlı Eğer bu uygulamak yolu, 480 00:25:37,870 --> 00:25:43,240 Bu pset ait olduğunu kesme için izin verdi. 481 00:25:43,240 --> 00:25:46,010 Yani bu yüzden ekstra biri. 482 00:25:46,010 --> 00:25:50,500 Ayrıca bazı olacak olgular boş sonlandırıcı 483 00:25:50,500 --> 00:25:53,230 olarak dahil edilmiştir o izin var karakterleri, 484 00:25:53,230 --> 00:25:56,120 ve onlar kontrol nasıl bu kelimenin sonu olmadığını görmek. 485 00:25:56,120 --> 00:26:01,340 Eğer ilgileniyorsanız, check out Study.cs50 üzerine Kevin'in video, 486 00:26:01,340 --> 00:26:04,790 yanı sıra Vikipedi olduğu gibi Orada bazı iyi kaynaklar. 487 00:26:04,790 --> 00:26:09,000 >> Ama biz sadece tür gitmek için gidiyoruz Bir deneyin aracılığıyla işe yarayabilecek nasıl 488 00:26:09,000 --> 00:26:11,010 Eğer verilir eğer. 489 00:26:11,010 --> 00:26:16,230 Yani biz burada bir süper basit bir tane var Onlara kelimeler "yarasa" ve "zoom" vardır. 490 00:26:16,230 --> 00:26:18,920 Ve biz burada gördüğünüz gibi, Burada bu küçük alan 491 00:26:18,920 --> 00:26:22,560 Bizim BOOL temsil eder evet, bu bir kelime, diyor. 492 00:26:22,560 --> 00:26:27,060 Ve sonra bu bizim, sahip karakter dizileri, değil mi? 493 00:26:27,060 --> 00:26:33,480 >> Yani biz aracılığıyla gidecek Bu denemede "yarasa" bulma. 494 00:26:33,480 --> 00:26:38,340 Yani doğru, üstünde başlar? 495 00:26:38,340 --> 00:26:46,290 Ve biz b karşılık geldiğini biliyorum İkinci endeksi, ikinci eleman 496 00:26:46,290 --> 00:26:47,840 Bu dizide, a ve b çünkü. 497 00:26:47,840 --> 00:26:51,340 Yani yaklaşık olarak ikinci bir. 498 00:26:51,340 --> 00:26:58,820 >> Ve Tamam, içine serin izleyin diyor Bir sonraki dizi, biz hatırlıyorum çünkü eğer, 499 00:26:58,820 --> 00:27:02,160 bu bölgesinin her değil Aslında elemanı içerir. 500 00:27:02,160 --> 00:27:07,110 Bu dizilerin her biri bir Doğru, bir gösterici içerir? 501 00:27:07,110 --> 00:27:10,030 Bunu yapmak için önemli bir ayrım var. 502 00:27:10,030 --> 00:27:13,450 >> Ben bu çalışır olan şey olmak gidiyor biliyorum ilk kez almak gerçekten zor, 503 00:27:13,450 --> 00:27:15,241 bu nedenle bu olsa bile İkinci ya da üçüncü kez 504 00:27:15,241 --> 00:27:18,370 ve bu tür hala zor görünüşteki, 505 00:27:18,370 --> 00:27:21,199 Eğer izlemek giderseniz ben söz veriyorum kısa yarın tekrar, 506 00:27:21,199 --> 00:27:22,740 muhtemelen çok daha mantıklı olacak. 507 00:27:22,740 --> 00:27:23,890 Bu sindirmek için bir sürü alır. 508 00:27:23,890 --> 00:27:27,800 Ben hala bazen duyuyorum gibi, bekle, bir deneyin nedir? 509 00:27:27,800 --> 00:27:29,080 Ben bu nasıl kullanabilirim? 510 00:27:29,080 --> 00:27:33,880 >> Peki bu durumda b var, hangi bizim ikinci endeksidir. 511 00:27:33,880 --> 00:27:40,240 Biz olsaydı, diyelim ki, c veya d veya başka herhangi bir harf, 512 00:27:40,240 --> 00:27:45,810 Biz dizine arkanı harita gerekir Bizim dizinin edilene karşılık gelir. 513 00:27:45,810 --> 00:27:56,930 Bu yüzden rchar gibi alacağını ve sadece biz Bir 0-25 içine haritaya kapalı çıkarma. 514 00:27:56,930 --> 00:27:58,728 İyi Herkes nasıl biz Bizim karakterleri map? 515 00:27:58,728 --> 00:28:00,440 TAMAM MI. 516 00:28:00,440 --> 00:28:05,980 >> Bu yüzden ikinci bir ve biz gitmek görmek, evet, bu NULL değil. 517 00:28:05,980 --> 00:28:07,780 Biz bu sonraki diziye hareket edebilirsiniz. 518 00:28:07,780 --> 00:28:12,300 Yani biz burada bu sonraki diziye devam. 519 00:28:12,300 --> 00:28:15,500 >> Ve şimdi, tamam, demek biz bir burada olmadığını görmek gerekir. 520 00:28:15,500 --> 00:28:18,590 Bir null veya yok aslında ileriye taşımak? 521 00:28:18,590 --> 00:28:21,880 Yani aslında bir hamle Bu dizide ileri. 522 00:28:21,880 --> 00:28:24,570 Ve biz Tamam, t son harfi, söylüyorlar. 523 00:28:24,570 --> 00:28:27,580 Yani biz dizinindeki t gitmek. 524 00:28:27,580 --> 00:28:30,120 Ve sonra biz ileriye taşımak çünkü başka bir tane var. 525 00:28:30,120 --> 00:28:38,340 Ve bu, evet, temelde söylüyor o bir kelime olduğunu söylüyor ötürü-- 526 00:28:38,340 --> 00:28:41,750 Eğer bu izlerseniz, o yol, sen gelmiş 527 00:28:41,750 --> 00:28:43,210 Bir kelime, biz biliyoruz ki "yarasa" dir. 528 00:28:43,210 --> 00:28:43,800 Evet? 529 00:28:43,800 --> 00:28:46,770 >> İZLEYİCİ: standart olduğunu var mı Daha sonra endeksi 0 ve 1 gibi bir tür var 530 00:28:46,770 --> 00:28:47,660 veya sonunda var mı? 531 00:28:47,660 --> 00:28:48,243 >> HOPARLÖR 1: Hayır 532 00:28:48,243 --> 00:28:55,360 Biz geriye bakmak Yani eğer bizim Burada beyan, bu bir bool var, 533 00:28:55,360 --> 00:28:59,490 bu yüzden sizin düğüm kendi unsur var. 534 00:28:59,490 --> 00:29:03,331 Bu yüzden dizinin parçası değil. 535 00:29:03,331 --> 00:29:03,830 Serin. 536 00:29:03,830 --> 00:29:08,370 Bizim kelime bitirmek ve Yani biz konum Bu dizi, biz ne istiyoruz 537 00:29:08,370 --> 00:29:12,807 Bu bir kelime için bir kontrol yapmak olduğunu. 538 00:29:12,807 --> 00:29:14,390 Bu durumda, evet dönüş olur. 539 00:29:14,390 --> 00:29:17,220 540 00:29:17,220 --> 00:29:24,090 >> Peki o notta, biz bu "hayvanat bahçesi" know - "Hayvanat Bahçesi" bir kelime olduğunu insanlarda gibi biz biliyoruz 541 00:29:24,090 --> 00:29:24,820 değil mi? 542 00:29:24,820 --> 00:29:28,990 Ama burada olur deneyin hayır, o değil, diyorum. 543 00:29:28,990 --> 00:29:33,980 Ve o söyleyebilirim çünkü biz Burada bir kelime olarak belirlenmiş değil. 544 00:29:33,980 --> 00:29:40,440 Hatta biz çapraz olsa Bu dizi aracılığıyla, 545 00:29:40,440 --> 00:29:43,890 Bu deneyin, hayır, söyleyebilirim zoo sizin sözlükte değil 546 00:29:43,890 --> 00:29:47,070 biz var çünkü gibi belirlemiştir. 547 00:29:47,070 --> 00:29:52,870 >> Yani tek yönlü ki- yapmak ah, üzgünüm, bu bir. 548 00:29:52,870 --> 00:29:59,450 Yani bu durumda, "hayvanat bahçesi" değildir Bir kelime, ama bizim denemede olduğunu. 549 00:29:59,450 --> 00:30:05,690 Ama bu birinde, biz bunu istiyoruz ki "banyo" ne olur kelimeyi tanıtmak 550 00:30:05,690 --> 00:30:08,260 Biz through-- b, bir, t takip etmektir. 551 00:30:08,260 --> 00:30:11,820 Biz bu dizide konum ve biz h aramak için gidin. 552 00:30:11,820 --> 00:30:15,220 >> Bu durumda, ne zaman h işaretçi bakmak, 553 00:30:15,220 --> 00:30:17,890 Tamam, NULL işaret ediyor? 554 00:30:17,890 --> 00:30:20,780 Açıkça bu sürece Başka bir dizi işaret, 555 00:30:20,780 --> 00:30:25,000 Eğer farz tüm işaretçileri ki Bu dizide null işaret ediyor. 556 00:30:25,000 --> 00:30:28,270 Bu durumda Yani, h işaret biz bir şey yapamayız yani null, 557 00:30:28,270 --> 00:30:31,540 bu yüzden de dönecekti sahte, "banyo" Burada değil. 558 00:30:31,540 --> 00:30:34,102 559 00:30:34,102 --> 00:30:35,810 Yani şimdi biz aslında konum ile gidecek 560 00:30:35,810 --> 00:30:39,790 nasıl biz aslında söyleyebilirim Bu "Hayvanat Bahçesi" Bizim denemede olduğunu. 561 00:30:39,790 --> 00:30:42,920 Nasıl bizim denemede içine "hayvanat bahçesi" ekleyebilirim? 562 00:30:42,920 --> 00:30:47,810 Biz başladık, aynı şekilde çok Bizim bağlantılı liste, biz kökünde başlar. 563 00:30:47,810 --> 00:30:50,600 Şüphe, en başladığınızda Bunların kökü. 564 00:30:50,600 --> 00:30:53,330 >> Ve biz söyleyeceğim, tamam, z. 565 00:30:53,330 --> 00:30:55,650 z bu var, ve öyle. 566 00:30:55,650 --> 00:30:58,370 Yani üzerine gidiyoruz sonraki dizi, tamam mı? 567 00:30:58,370 --> 00:31:01,482 Ve sonra bir sonraki üzerine, tamam, o mevcut mu demek? 568 00:31:01,482 --> 00:31:03,000 It does. 569 00:31:03,000 --> 00:31:04,330 Bu yine. 570 00:31:04,330 --> 00:31:08,670 >> Ve böylece bizim bir sonraki, biz dedi ettik, Tamam, "hayvanat bahçesi" zaten burada var. 571 00:31:08,670 --> 00:31:12,440 Yapmamız gereken tek şey, bu eşit ayarlanır true, orada bir kelime olduğunu. 572 00:31:12,440 --> 00:31:15,260 Her şeyi takip olsaydı Bu noktadan önce kadar, 573 00:31:15,260 --> 00:31:17,030 o, bir kelime yüzden sadece Böyle için eşit ayarlayın. 574 00:31:17,030 --> 00:31:17,530 Evet? 575 00:31:17,530 --> 00:31:22,550 >> İZLEYİCİ: Öyleyse bunu yapar "ba" bir kelime de olduğu anlamına gelir? 576 00:31:22,550 --> 00:31:24,120 >> HOPARLÖR 1: Hayır 577 00:31:24,120 --> 00:31:28,870 Yani bu durumda, "ba" Biz alacağı Burada, biz, bir kelime olduğunu söyleyebilirim 578 00:31:28,870 --> 00:31:31,590 ve hala hiçbir olurdu. 579 00:31:31,590 --> 00:31:32,822 TAMAM MI? 580 00:31:32,822 --> 00:31:33,740 Mmhmm? 581 00:31:33,740 --> 00:31:36,360 >> İZLEYİCİ: Eğer bir kez Yani bir kelime ve o zaman, evet demek 582 00:31:36,360 --> 00:31:38,380 m gitmek içerecektir? 583 00:31:38,380 --> 00:31:42,260 >> HOPARLÖR 1: Yani bu yapmak zorunda Şarkı söylemeyi kes Eğer bu yükleniyor ediyoruz. 584 00:31:42,260 --> 00:31:43,640 Siz "Hayvanat Bahçesi" bir kelime olduğunu söylüyorlar. 585 00:31:43,640 --> 00:31:47,020 Eğer check-- gittiğinizde gibi, sen söylemek istiyorum ki, 586 00:31:47,020 --> 00:31:49,400 "Hayvanat Bahçesi", bu sözlükte mevcut mu? 587 00:31:49,400 --> 00:31:54,200 Sadece ", hayvanat bahçesi" aramak için gidiyoruz ve sonra bir kelime olup olmadığını görmek için kontrol edin. 588 00:31:54,200 --> 00:31:57,291 Sen hiç hareket için gidiyoruz bu değil, çünkü m kadar 589 00:31:57,291 --> 00:31:58,290 ne için arıyoruz. 590 00:31:58,290 --> 00:32:02,690 591 00:32:02,690 --> 00:32:08,070 >> Biz aslında istedim Yani eğer Bu denemede içine "banyo" add, 592 00:32:08,070 --> 00:32:11,390 Biz de aynı şeyi yapacağını biz yaptığımız gibi "hayvanat bahçesi" 593 00:32:11,390 --> 00:32:15,380 ne zaman biz o görürdünüz dışında denemek ve h olsun, o yok. 594 00:32:15,380 --> 00:32:20,090 Çalışırken Yani bu düşünebilirsiniz Bir bağlantılı listeye yeni bir düğüm eklemek için, 595 00:32:20,090 --> 00:32:27,210 bu yüzden başka eklemeniz gerekir böylece gibi bu dizilerin biri. 596 00:32:27,210 --> 00:32:35,670 Ve sonra biz sadece h ayarlanır biz ne Bu işaret, bu dizinin elemanı. 597 00:32:35,670 --> 00:32:39,430 >> Ve sonra ne biz burada yapmak istersiniz? 598 00:32:39,430 --> 00:32:43,110 True eşit ekle çünkü bir kelime. 599 00:32:43,110 --> 00:32:46,350 600 00:32:46,350 --> 00:32:48,150 Serin. 601 00:32:48,150 --> 00:32:48,700 Biliyorum. 602 00:32:48,700 --> 00:32:51,170 Denemeleri değil en heyecan verici. 603 00:32:51,170 --> 00:32:54,250 İnan bana, ben biliyorum. 604 00:32:54,250 --> 00:32:58,040 >> Yani bir şey denemeden ile gerçekleştirmek, Ben çok verimli olduğunu söyledi. 605 00:32:58,040 --> 00:33:00,080 Bu yüzden onlar gördüm alan bir ton kadar sürebilir. 606 00:33:00,080 --> 00:33:01,370 Onlar tür karıştırıyorsun. 607 00:33:01,370 --> 00:33:03,367 Peki neden biz hiç bu kullanmak? 608 00:33:03,367 --> 00:33:05,450 Onlar çünkü biz bu kullanmak inanılmaz etkili. 609 00:33:05,450 --> 00:33:08,130 >> Yani eğer hiç arıyorsanız Bir kelime kadar, sen sadece 610 00:33:08,130 --> 00:33:10,450 kelime uzunluğu ile sınırlanır. 611 00:33:10,450 --> 00:33:15,210 Yani bir arıyorsanız uzunluk beş kelimesi, 612 00:33:15,210 --> 00:33:20,940 Eğer sadece hiç zorunda gidiyoruz Tamam, en fazla beş kıyaslamalara yapmak? 613 00:33:20,940 --> 00:33:25,780 Yani temelde bir sabit kılar. 614 00:33:25,780 --> 00:33:29,150 Ekleme ve arama gibi temelde sabit zaman vardır. 615 00:33:29,150 --> 00:33:33,750 >> Hiç alabilirsiniz Yani eğer sabit zamanda bir şey, 616 00:33:33,750 --> 00:33:35,150 o gets kadar iyi. 617 00:33:35,150 --> 00:33:37,990 Sen daha iyi alınamıyor Bu şeyler için zaman sabiti. 618 00:33:37,990 --> 00:33:43,150 Böylece biridir denemeden büyük artılar. 619 00:33:43,150 --> 00:33:46,780 >> Ama alan bir çok şey var. 620 00:33:46,780 --> 00:33:50,380 Yani bir tür karar vermek zorunda sana ne daha önemli. 621 00:33:50,380 --> 00:33:54,700 Ve bugünün bilgisayarlarda, alan bir deneyin kadar sürebileceğini 622 00:33:54,700 --> 00:33:57,740 Belki de etkilemez o kadar, ama belki 623 00:33:57,740 --> 00:34:01,350 Eğer bir şey ile uğraşıyoruz Bu, çok, çok daha fazla şeyler vardır 624 00:34:01,350 --> 00:34:02,810 ve bir deneyin sadece makul değil. 625 00:34:02,810 --> 00:34:03,000 Evet? 626 00:34:03,000 --> 00:34:05,610 >> İZLEYİCİ: Bekleyin, böylece 26 var her biri mektuplar? 627 00:34:05,610 --> 00:34:07,440 >> HOPARLÖR 1: Mmhmm. 628 00:34:07,440 --> 00:34:08,570 Evet, sen 26 var. 629 00:34:08,570 --> 00:34:16,984 Bazı sonra kelime işareti ve bir var her biri 26 işaretçiler var. 630 00:34:16,984 --> 00:34:17,775 Ve onlar point-- konum 631 00:34:17,775 --> 00:34:20,280 >> İZLEYİCİ: Ve her 26, her 26 var mı? 632 00:34:20,280 --> 00:34:21,500 >> HOPARLÖR 1: Evet. 633 00:34:21,500 --> 00:34:27,460 Olabildiğince Ve bu, bu yüzden oldukça hızlı genişler, bkz. 634 00:34:27,460 --> 00:34:28,130 Tamam. 635 00:34:28,130 --> 00:34:32,524 Bu yüzden, ağaçların içine almak için gidiyoruz hangi Sevdiğim kolay hissediyorum ve muhtemelen olacak 636 00:34:32,524 --> 00:34:36,150 Bir güzel küçük ertelemek olmak Orada denemeden gelen. 637 00:34:36,150 --> 00:34:39,620 Yani umarım çoğunuz daha önce bir ağaç gördük. 638 00:34:39,620 --> 00:34:41,820 Güzel gibi değil dışında olanlar, ki ben 639 00:34:41,820 --> 00:34:44,340 Herkes bilmiyorum Son zamanlarda açık havada gitti. 640 00:34:44,340 --> 00:34:49,230 Ben elma bu hafta sonu toplama gitti, ve aman oh güzel oldu. 641 00:34:49,230 --> 00:34:52,250 Ben yaprakları bilmiyordum O güzel görünebilir. 642 00:34:52,250 --> 00:34:53,610 >> Peki bu doğru, sadece bir ağaç nedir? 643 00:34:53,610 --> 00:34:56,790 Sadece bazı düğüm var, ve diğer düğümlerin bir demet işaret. 644 00:34:56,790 --> 00:34:59,570 Burada gördüğünüz gibi, bu yinelenen tema tür. 645 00:34:59,570 --> 00:35:03,720 Düğümlerine Düğümler işaret tür bir Birçok veri yapılarının özü. 646 00:35:03,720 --> 00:35:06,670 Sadece biz nasıl bağlıdır Onları birbirlerine işaret var 647 00:35:06,670 --> 00:35:08,600 ve nasıl hareket içlerinden ve nasıl 648 00:35:08,600 --> 00:35:14,500 belirlerse şeyleri eklemek Farklı özellikleri. 649 00:35:14,500 --> 00:35:17,600 >> Yani sadece bazı terminoloji, ki ben daha önce kullandım. 650 00:35:17,600 --> 00:35:20,010 Yani kök çok üstünde ne olursa olsun. 651 00:35:20,010 --> 00:35:21,200 biz her zaman başlangıç ​​nerede var. 652 00:35:21,200 --> 00:35:23,610 Ayrıca kafa olarak düşünebiliriz. 653 00:35:23,610 --> 00:35:28,750 Ama ağaçlar için, biz eğilimindedir root olarak bakın. 654 00:35:28,750 --> 00:35:32,820 >> Altındaki şey ötürü-- Çok, çok bottom-- de 655 00:35:32,820 --> 00:35:34,500 kabul yaprakları vardır. 656 00:35:34,500 --> 00:35:37,210 Yani onunla birlikte gider Bütün ağaç şey, değil mi? 657 00:35:37,210 --> 00:35:39,860 Yapraklar ağacın kenarlarında bulunmaktadır. 658 00:35:39,860 --> 00:35:45,820 >> Ve o zaman biz de bir çift var terimleri ilgili düğümler hakkında konuşmak 659 00:35:45,820 --> 00:35:46,680 birbirlerine. 660 00:35:46,680 --> 00:35:49,700 Bu yüzden, ebeveyn var Çocuklar ve kardeşleri. 661 00:35:49,700 --> 00:35:56,260 Bu nedenle, bu durumda, 3 5, 6 ve 7, ana. 662 00:35:56,260 --> 00:36:00,370 Yani üst ne olursa olsun bir sen ne yukarıda bir adım 663 00:36:00,370 --> 00:36:02,940 yani sadece atıfta Bir aile ağacı gibi. 664 00:36:02,940 --> 00:36:07,090 Umarım, bu tüm biraz Bit deneme daha sezgisel. 665 00:36:07,090 --> 00:36:10,970 >> Kardeşler sahip herhangi bir maddedir Sağ aynı ana,? 666 00:36:10,970 --> 00:36:13,470 Burada aynı seviyede konum. 667 00:36:13,470 --> 00:36:16,960 Ve sonra ben, olduğu gibi diyerek, çocuklar sadece vardır 668 00:36:16,960 --> 00:36:22,630 Aşağıda bir adım ne olursa olsun Söz konusu düğüm, tamam mı? 669 00:36:22,630 --> 00:36:23,470 Serin. 670 00:36:23,470 --> 00:36:25,610 Yani bir ikili ağaç. 671 00:36:25,610 --> 00:36:31,450 Herkes birinde bir tahminde Can İkili ağacın özellikleri? 672 00:36:31,450 --> 00:36:32,770 >> İZLEYİCİ: Maksimum iki yaprak. 673 00:36:32,770 --> 00:36:33,478 >> HOPARLÖR 1: Sağ. 674 00:36:33,478 --> 00:36:34,640 Yani iki yaprak maks. 675 00:36:34,640 --> 00:36:39,730 Yani daha önce bu birinde, biz bu vardı Bu, üç vardı, ama bir ikili ağaç 676 00:36:39,730 --> 00:36:45,000 Eğer ikisinin max var ebeveyn başına çocuk, değil mi? 677 00:36:45,000 --> 00:36:46,970 Başka var ilginç bir özelliği. 678 00:36:46,970 --> 00:36:51,550 Herkes biliyor mu? 679 00:36:51,550 --> 00:36:52,620 İkili ağaç. 680 00:36:52,620 --> 00:37:00,350 >> Yani bir ikili ağaç her şey olur Şeyin bu bir sorted-- değil 681 00:37:00,350 --> 00:37:05,320 ama sıralı ikili ağaç, Sağdaki şeyi 682 00:37:05,320 --> 00:37:08,530 , ebeveyn büyüktür ve soldaki her şeyi 683 00:37:08,530 --> 00:37:10,035 ana daha azdır. 684 00:37:10,035 --> 00:37:15,690 Ve bu bir sınav olmuştur Soru önce, çok iyi bilmek. 685 00:37:15,690 --> 00:37:19,500 Yani biz bu tanımlayan yol, Yine, biz başka bir düğüm var. 686 00:37:19,500 --> 00:37:21,880 Bu ne çok benziyor? 687 00:37:21,880 --> 00:37:28,336 688 00:37:28,336 --> 00:37:28,836 Iki misli 689 00:37:28,836 --> 00:37:29,320 >> İZLEYİCİ: Bağlı listeler 690 00:37:29,320 --> 00:37:31,100 >> HOPARLÖR 1: Bir çift bağlantılı liste, değil mi? 691 00:37:31,100 --> 00:37:33,690 Yani biz bu değiştirirseniz önceki ve sonraki ile, 692 00:37:33,690 --> 00:37:35,670 Bu bir çift bağlantılı liste olacaktır. 693 00:37:35,670 --> 00:37:40,125 Ancak bu durumda, biz aslında sol ve sağ ve bu kadar var. 694 00:37:40,125 --> 00:37:41,500 Aksi takdirde, tam olarak aynı. 695 00:37:41,500 --> 00:37:43,374 Biz hala elemanı var Eğer aradığınız 696 00:37:43,374 --> 00:37:45,988 ve sadece iki işaretçiler var ne olursa olsun gidiyor yanında. 697 00:37:45,988 --> 00:37:49,210 698 00:37:49,210 --> 00:37:51,870 Evet, bu yüzden ikili arama ağacı. 699 00:37:51,870 --> 00:37:57,665 Biz, her şeyi fark ederseniz Burada büyük edemememden olduğunu 700 00:37:57,665 --> 00:37:59,850 hemen veya her Burada sağa 701 00:37:59,850 --> 00:38:02,840 Her şey daha büyüktür Burada daha azdır. 702 00:38:02,840 --> 00:38:06,980 703 00:38:06,980 --> 00:38:14,000 >> Bu yüzden arama olsaydı, onu İkili arama çok yakın bakmak gerekir 704 00:38:14,000 --> 00:38:14,910 Burada, değil mi? 705 00:38:14,910 --> 00:38:17,640 Yerine bakarak dışında Yarım dizisinde, 706 00:38:17,640 --> 00:38:21,720 Biz sadece iki solunda arıyoruz Yan ya da ağacın sağ tarafında. 707 00:38:21,720 --> 00:38:24,850 Biraz basit olur Yani, sanırım. 708 00:38:24,850 --> 00:38:29,300 >> Kök NULL Yani, Açıkçası sadece yanlış değil. 709 00:38:29,300 --> 00:38:33,470 O varsa ve tabii ki bu doğru. 710 00:38:33,470 --> 00:38:35,320 O daha az ise, biz sol arama. 711 00:38:35,320 --> 00:38:37,070 O daha büyük ise, Biz hakkımız arayın. 712 00:38:37,070 --> 00:38:39,890 Bu, tam olarak ikili arama gibi sadece farklı bir veri yapısı 713 00:38:39,890 --> 00:38:40,600 biz kullanıyoruz. 714 00:38:40,600 --> 00:38:42,790 Bunun yerine bir dizi, sadece bir ikili ağaç. 715 00:38:42,790 --> 00:38:45,820 716 00:38:45,820 --> 00:38:48,090 >> Tamam, yığınları. 717 00:38:48,090 --> 00:38:51,550 Ve aynı zamanda, biz gibi görünüyor zaman biraz olabilir. 718 00:38:51,550 --> 00:38:54,460 Bunu yaparsak, ben gitmek için mutluyum Bu herhangi bir tekrar. 719 00:38:54,460 --> 00:38:56,856 Tamam, bu yüzden yığınlar. 720 00:38:56,856 --> 00:39:02,695 Herkes ne hatırlıyor mu stacks-- Bir yığının herhangi bir özellikleri? 721 00:39:02,695 --> 00:39:05,550 722 00:39:05,550 --> 00:39:10,400 >> Tamam, çoğumuz bu yüzden, sanırım, yemek yemek halls-- 723 00:39:10,400 --> 00:39:13,100 biz gibi olmayabilir kadar. 724 00:39:13,100 --> 00:39:16,900 Ama belli ki, bir yığının düşünebilirsiniz anlamıyla sadece tepsileri bir yığını olarak 725 00:39:16,900 --> 00:39:18,460 veya şeylerin bir yığın. 726 00:39:18,460 --> 00:39:21,820 Ve ne önemli gerçekleştirmek için bu olmasıdır 727 00:39:21,820 --> 00:39:26,850 karakteristik şey-- biz by-- diyoruz ki LIFO olduğunu. 728 00:39:26,850 --> 00:39:28,450 Herkes bu açılımı ne biliyor mu? 729 00:39:28,450 --> 00:39:29,070 Mmhmm? 730 00:39:29,070 --> 00:39:30,650 >> İZLEYİCİ: ilk, dışarı Last. 731 00:39:30,650 --> 00:39:32,250 >> HOPARLÖR 1: Sağ, ilk olarak, dışarı sürer. 732 00:39:32,250 --> 00:39:36,585 Bildiğimiz Yani, biz şeyleri istifleme eğer yukarı, en kolay şey off-- kapmak için 733 00:39:36,585 --> 00:39:39,570 ve belki de tek şey yakala Bizim yığını büyük enough-- ise kapalı 734 00:39:39,570 --> 00:39:40,850 Bu üst unsurdur. 735 00:39:40,850 --> 00:39:43,460 Yani ne olursa olsun konulmuştur Burada gördüğünüz gibi last--, 736 00:39:43,460 --> 00:39:46,370 ne olursa olsun itildi çoğunda recently-- olduğunu 737 00:39:46,370 --> 00:39:51,160 İlk olacak Biz kapalı pop şey, tamam mı? 738 00:39:51,160 --> 00:39:56,324 >> Peki biz burada var olduğunu Başka bir typedef struct. 739 00:39:56,324 --> 00:39:58,740 Bu gerçekten sadece bir gibi olduğunu veri yapısı kursu çökmesine, 740 00:39:58,740 --> 00:40:01,650 böylece çocuklar atılan bir çok şey var. 741 00:40:01,650 --> 00:40:02,540 Biliyorum. 742 00:40:02,540 --> 00:40:04,970 Yani başka bir yapı. 743 00:40:04,970 --> 00:40:06,740 Yapıların Yay. 744 00:40:06,740 --> 00:40:16,660 >> Bu durumda, bir işaretçinin Bazı kapasiteye sahip bir dizi. 745 00:40:16,660 --> 00:40:20,830 Yani bu bizim yığını temsil Burada, bizim gerçek dizi gibi 746 00:40:20,830 --> 00:40:22,520 bizim elemanları tutuyor. 747 00:40:22,520 --> 00:40:24,850 Ve sonra burada bazı boyutu var. 748 00:40:24,850 --> 00:40:31,170 >> Ve genellikle, saklamak istediğiniz yığını ne kadar büyük iz 749 00:40:31,170 --> 00:40:36,180 bu izin ne oluyor çünkü Eğer boyutu biliyorsanız yapmak için, 750 00:40:36,180 --> 00:40:39,170 Eğer söylemek için izin verir, Tamam, ben kapasitede olduğumu? 751 00:40:39,170 --> 00:40:40,570 Ben daha fazla bir şey ekleyebilir miyim? 752 00:40:40,570 --> 00:40:44,650 Ve o da size söyler nerede yığının üst 753 00:40:44,650 --> 00:40:48,180 öylesine sizi biliyorum Aslında çıkarabilirsin. 754 00:40:48,180 --> 00:40:51,760 Ve aslında gidiyor Burada biraz daha net. 755 00:40:51,760 --> 00:40:57,350 >> Peki itme, bir şey için, eğer itme uygulamak için hiç vardı, 756 00:40:57,350 --> 00:41:01,330 Ben sadece söylediğim gibi, sizin yanınızdaki yığını sağ, sınırlı bir boyutu vardır? 757 00:41:01,330 --> 00:41:03,990 Bizim dizi bazı kapasiteye sahip. 758 00:41:03,990 --> 00:41:04,910 Bu bir dizi var. 759 00:41:04,910 --> 00:41:08,930 Bu sabit bir boyutu olduğunu, bu yüzden gerek daha fazla koyarak değil emin olun 760 00:41:08,930 --> 00:41:11,950 biz daha bizim diziye Aslında için yer var. 761 00:41:11,950 --> 00:41:16,900 >> Yani bir itme oluştururken fonksiyonu, tamam, diyelim ki yapmak ilk şey, 762 00:41:16,900 --> 00:41:18,570 Benim yığını boşluk var mı? 763 00:41:18,570 --> 00:41:23,330 Ben yapmazsam, üzgünüm Çünkü Ben senin elemanı saklayamazsınız. 764 00:41:23,330 --> 00:41:28,980 Ben yaparsanız, o zaman saklamak istediğiniz bu yığının üstündeki, değil mi? 765 00:41:28,980 --> 00:41:31,325 Elimizdeki neden >> Ve bu Bizim boyutu takip etmek. 766 00:41:31,325 --> 00:41:35,290 Bizim boyut takip etmezseniz, bunu koymak nerede bilmiyorum. 767 00:41:35,290 --> 00:41:39,035 Biz ne çok şey bilmiyorum Zaten bizim dizi bulunmaktadır. 768 00:41:39,035 --> 00:41:41,410 Açıkçası gibi yolları vardır belki bunu yapabilirdi. 769 00:41:41,410 --> 00:41:44,610 Sen NULL için her şeyi başlatmak olabilir ve daha sonra son NULL kontrol, 770 00:41:44,610 --> 00:41:47,950 ama bir daha kolay şey sadece bir Tamam, büyüklüğü takip söylemek. 771 00:41:47,950 --> 00:41:51,840 Ben biliyorum gibi ben dört elementin var Benim dizide, bir sonraki şey çok 772 00:41:51,840 --> 00:41:55,930 biz koymak, biz konum endeksi 4 de saklamak için gidiyoruz. 773 00:41:55,930 --> 00:42:00,940 Sonra, tabii ki, bu demektir Eğer başarılı bir şey itti ettik 774 00:42:00,940 --> 00:42:03,320 senin yığına, sen boyutunu artırmak istiyor 775 00:42:03,320 --> 00:42:08,880 biliyorum ki bunu nerede Eğer daha fazla şeyler itebilir ki. 776 00:42:08,880 --> 00:42:12,730 >> Biz pop çalışıyoruz Yani eğer yığın kapalı bir şey, 777 00:42:12,730 --> 00:42:16,072 ilk şey ne olabilir biz kontrol etmek istediğiniz? 778 00:42:16,072 --> 00:42:18,030 Sen almaya çalışıyoruz senin yığın kapalı bir şey. 779 00:42:18,030 --> 00:42:21,710 780 00:42:21,710 --> 00:42:24,781 Emin var mı destenizin şey? 781 00:42:24,781 --> 00:42:25,280 Hayır. 782 00:42:25,280 --> 00:42:26,894 Peki ne kontrol etmek isteyebilirsiniz? 783 00:42:26,894 --> 00:42:27,810 >> İZLEYİCİ: [duyulamaz]. 784 00:42:27,810 --> 00:42:29,880 HOPARLÖR 1: boyutu mı? 785 00:42:29,880 --> 00:42:31,840 Boyutu. 786 00:42:31,840 --> 00:42:38,520 Yani biz olmadığını görmek için kontrol etmek istediğiniz bizim boyut Tamam, 0'dan büyüktür? 787 00:42:38,520 --> 00:42:44,970 Ve eğer, o zaman azaltmak istiyoruz 0 ile bizim boyut ve dönüş. 788 00:42:44,970 --> 00:42:45,840 Neden? 789 00:42:45,840 --> 00:42:49,950 >> İlk birinde biz iterek, biz itti 790 00:42:49,950 --> 00:42:52,460 boyutu ve daha sonra güncellenmiş boyutu üzerine. 791 00:42:52,460 --> 00:42:57,850 Bu durumda, boyut azaltma konum ve sonra koparma, havalandığını 792 00:42:57,850 --> 00:42:58,952 Bizim diziden. 793 00:42:58,952 --> 00:42:59,826 Neden biz bunu olabilir? 794 00:42:59,826 --> 00:43:04,800 795 00:43:04,800 --> 00:43:11,811 Yani benim yığın üzerinde bir şey varsa, Bu noktada benim boyutu ne olurdu? 796 00:43:11,811 --> 00:43:13,140 1. 797 00:43:13,140 --> 00:43:15,180 >> Ve nerede eleman 1 saklanır? 798 00:43:15,180 --> 00:43:17,621 Ne endeksi at? 799 00:43:17,621 --> 00:43:18,120 HEDEF KİTLE: 0. 800 00:43:18,120 --> 00:43:19,060 HOPARLÖR 1: 0. 801 00:43:19,060 --> 00:43:22,800 Bu durumda Yani, biz Her zaman sure-- yapmak gerekir 802 00:43:22,800 --> 00:43:27,630 yerine dönen boyutu eksi 1, çünkü biz 803 00:43:27,630 --> 00:43:31,730 Bizim eleman olduğunu biliyoruz 1 daha az depolanmış olacak 804 00:43:31,730 --> 00:43:34,705 Bizim boyutu ne olursa olsun, bu sadece ilgilenir. 805 00:43:34,705 --> 00:43:36,080 Bu biraz daha zarif bir şekilde var. 806 00:43:36,080 --> 00:43:41,220 Ve biz sadece bizim, azaltma Daha sonra boyutu ve boyutunu geri dönmek. 807 00:43:41,220 --> 00:43:42,330 Mmhmm? 808 00:43:42,330 --> 00:43:45,300 >> İZLEYİCİ: Ben, sadece genel olarak tahmin Neden bu veri yapısı olur 809 00:43:45,300 --> 00:43:47,800 yararlı? 810 00:43:47,800 --> 00:43:50,660 >> HOPARLÖR 1: Bu sizin bağlamda bağlıdır. 811 00:43:50,660 --> 00:43:57,420 Teorinin bazı Yani, Eğer OK Şarkı söylemeyi kes çalışıyorsanız, 812 00:43:57,420 --> 00:44:02,750 yararlı varsa bakayım dışarıdan daha faydalıdır 813 00:44:02,750 --> 00:44:05,420 CS. 814 00:44:05,420 --> 00:44:15,780 Yığınları ile, her zaman ihtiyacınız bir şey izlemek için bu 815 00:44:15,780 --> 00:44:20,456 en son eklenen edildiğinde ise Bir yığın kullanmak istediğiniz gidiyoruz. 816 00:44:20,456 --> 00:44:24,770 >> Ve ben iyi düşünemiyorum Şu anda bu örneği. 817 00:44:24,770 --> 00:44:29,955 Ama ne zaman son şey, sizin için en önemli olan 818 00:44:29,955 --> 00:44:31,705 Bu zaman bir yığın var yararlı olacak. 819 00:44:31,705 --> 00:44:35,797 820 00:44:35,797 --> 00:44:39,330 Ben eğer düşünmeye çalışıyorum Bu iyi bir tane var. 821 00:44:39,330 --> 00:44:43,720 Gelecek iyi bir örnek düşünüyorsanız 20 dakika, ben kesinlikle size söyleyecektir. 822 00:44:43,720 --> 00:44:49,455 >> Ama genel olarak, bir şey varsa, gibi çoğu nereye En son dedi 823 00:44:49,455 --> 00:44:52,470 Bu, en önemli var olan burada bir yığın devreye giriyor. 824 00:44:52,470 --> 00:44:58,860 Kuyruklar Oysa tersi türüdür. 825 00:44:58,860 --> 00:44:59,870 Ve tüm küçük köpekler. 826 00:44:59,870 --> 00:45:00,890 Doğru, bu harika değil mi? 827 00:45:00,890 --> 00:45:03,299 Ben gerektiği gibi hissediyorum Sadece bir tavşan video var 828 00:45:03,299 --> 00:45:05,090 Sağ ortasında Eğer çocuklar için bölüm 829 00:45:05,090 --> 00:45:08,870 Bu, yoğun bir kesitidir için. 830 00:45:08,870 --> 00:45:10,480 >> Yani bir kuyruk. 831 00:45:10,480 --> 00:45:12,710 Temelde bir sıra, bir çizgi gibi. 832 00:45:12,710 --> 00:45:15,780 Siz bu gün emin değilim kullanımı, Sadece bizim yemek salonlarında gibi. 833 00:45:15,780 --> 00:45:18,160 Yani biz gitmek zorunda ve ben, bizim tepsileri olsun 834 00:45:18,160 --> 00:45:21,260 emin satır beklemek zorunda tokatlamak veya yiyecek almak için. 835 00:45:21,260 --> 00:45:24,650 Burada >> Yani fark Bu FIFO olmasıdır. 836 00:45:24,650 --> 00:45:30,090 Böylece LIFO ilk olarak son olarak ise dışarı, FIFO ilk giren ilk çıkar, içinde. 837 00:45:30,090 --> 00:45:33,400 Yani bu nereye koyduğunuzu ne olursa olsun İlk üzerindeki en önemli. 838 00:45:33,400 --> 00:45:35,540 Eğer bekliyorlardı Yani eğer Bir line-- sizi can 839 00:45:35,540 --> 00:45:39,130 Eğer gitti eğer hayal Yeni iPhone gidip 840 00:45:39,130 --> 00:45:42,800 ve bir yığın nerede doğrultusunda son kişi, ilk aldım 841 00:45:42,800 --> 00:45:44,160 insanlar birbirlerini öldürecek. 842 00:45:44,160 --> 00:45:49,800 >> Yani FIFO, hepimiz çok tanıdık Burada gerçek dünyada beraber, 843 00:45:49,800 --> 00:45:54,930 ve tüm aslında ile ilgisi yoktur tür bütün bu çizgi yeniden 844 00:45:54,930 --> 00:45:56,900 ve yapısını kuyruk. 845 00:45:56,900 --> 00:46:02,390 Yığını oysa Yani, Biz itme ve pop var. 846 00:46:02,390 --> 00:46:06,440 Bir sıra ile, biz var enqueue ve dequeue. 847 00:46:06,440 --> 00:46:10,910 Yani enqueue temelde anlamına gelir sırtına koymak, 848 00:46:10,910 --> 00:46:13,680 ve dequeue araçlar almak Önden kapalı. 849 00:46:13,680 --> 00:46:18,680 Yani bizim veri yapısı olan bir biraz daha karmaşık. 850 00:46:18,680 --> 00:46:21,060 Biz takip etmek için ikinci bir şey var. 851 00:46:21,060 --> 00:46:25,950 >> Kafa olmadan Yani, bu Doğru, tam bir yığın nedir? 852 00:46:25,950 --> 00:46:27,900 Bu bir yığın aynı yapıdır. 853 00:46:27,900 --> 00:46:32,480 Farklı olan tek şey artık biz ise Ne düşünüyorsunuz bu kafa var 854 00:46:32,480 --> 00:46:34,272 izlemek için gidiyor? 855 00:46:34,272 --> 00:46:35,510 >> İZLEYİCİ: Birincisi. 856 00:46:35,510 --> 00:46:38,685 >> HOPARLÖR 1: Sağ, biz koymak ilk şey. 857 00:46:38,685 --> 00:46:41,130 Bizim sıranın başkanı. 858 00:46:41,130 --> 00:46:42,240 Kim doğrultusunda ilk var. 859 00:46:42,240 --> 00:46:45,300 860 00:46:45,300 --> 00:46:49,420 Pekala, bu yüzden Enqueue yaparsanız. 861 00:46:49,420 --> 00:46:52,720 862 00:46:52,720 --> 00:46:55,920 Yine, herhangi Bu veri yapıları, 863 00:46:55,920 --> 00:46:59,760 Biz bir dizi ile uğraşıyoruz yana, biz boşluk olup olmadığını kontrol etmek gerekir. 864 00:46:59,760 --> 00:47:03,290 >> Bu bana söylemek gibi bir tür olduğunu Siz, bir dosyayı açarsanız, 865 00:47:03,290 --> 00:47:04,760 Eğer null kontrol etmek gerekir. 866 00:47:04,760 --> 00:47:08,330 Bu yığınlar herhangi ve kuyruklar, ihtiyacınız 867 00:47:08,330 --> 00:47:13,420 Biz çünkü boşluk olup olmadığını görmek için Bir sabit boyut dizi ile ilgili, 868 00:47:13,420 --> 00:47:16,030 Hepimizin 5'e kadar ötürü-- 0, 1 gördüğünüz gibi. 869 00:47:16,030 --> 00:47:20,690 Yani biz bu durumda ne çek biz hala boşluk olup olmadığını görmek için. 870 00:47:20,690 --> 00:47:23,110 Bizim boyut kapasitesinin daha düşük mü? 871 00:47:23,110 --> 00:47:28,480 >> Eğer öyleyse, biz de bunu saklamak gerekir bizim boyutunu güncellemek ve kuyruk. 872 00:47:28,480 --> 00:47:30,250 Yani kuyruk bu durumda ne olabilir? 873 00:47:30,250 --> 00:47:32,360 Bu açıkça yazılması değil. 874 00:47:32,360 --> 00:47:33,380 Nasıl biz depolamak? 875 00:47:33,380 --> 00:47:34,928 Kuyruk ne olurdu? 876 00:47:34,928 --> 00:47:38,600 877 00:47:38,600 --> 00:47:40,190 >> Yani bu örnek üzerinden yürüyelim. 878 00:47:40,190 --> 00:47:44,590 Yani bu büyüklükte 6 bir dizi, değil mi? 879 00:47:44,590 --> 00:47:49,220 Ve biz şu anda, bizim boyut 5'tir var. 880 00:47:49,220 --> 00:47:55,240 Biz koymak ne zaman ve gidiyor Sağ beşinci endeksi, içine gitmek için? 881 00:47:55,240 --> 00:47:57,030 Yani kuyruk saklayın. 882 00:47:57,030 --> 00:48:05,600 >> Kuyruk yazmak için başka bir yolu sadece olur boyutu endeksi bizim dizi, doğru? 883 00:48:05,600 --> 00:48:07,560 Bu boyut 5'tir. 884 00:48:07,560 --> 00:48:11,490 Sonraki şey 5 içine gidecek. 885 00:48:11,490 --> 00:48:12,296 Serin? 886 00:48:12,296 --> 00:48:13,290 TAMAM MI. 887 00:48:13,290 --> 00:48:16,350 Bu biraz daha karmaşık olur Biz kafa karıştırmasını başladığınızda. 888 00:48:16,350 --> 00:48:17,060 Evet? 889 00:48:17,060 --> 00:48:20,090 >> İZLEYİCİ: anlamına mı ki Bir dizi ilan olurdu 890 00:48:20,090 --> 00:48:23,880 Beş element uzun ve o zaman biz bunun üzerine ekliyoruz? 891 00:48:23,880 --> 00:48:24,730 >> HOPARLÖR 1: Hayır 892 00:48:24,730 --> 00:48:27,560 Yani bu durumda, bu bir yığın. 893 00:48:27,560 --> 00:48:31,760 Bu ilan edilecek büyüklüğü 6 bir dizi olarak. 894 00:48:31,760 --> 00:48:37,120 Ve bu durumda biz Sadece bir boşluk sol var. 895 00:48:37,120 --> 00:48:42,720 >> Tamam, bu yüzden bir şey bu olduğunu durumda, başımız 0, eğer, 896 00:48:42,720 --> 00:48:45,270 o zaman biz sadece boyutunda ekleyebilirsiniz. 897 00:48:45,270 --> 00:48:51,020 Ama biraz yanıltıcıdır alır Aslında, çünkü onlar 898 00:48:51,020 --> 00:48:52,840 Bir slayt yok Bunun için, bu yüzden ben gidiyorum 899 00:48:52,840 --> 00:48:56,670 öyle değil, çünkü birini çizmek için Oldukça basit senin kez 900 00:48:56,670 --> 00:48:59,230 şeylerden kurtulmak başlar. 901 00:48:59,230 --> 00:49:03,920 Bir yığın oysa Yani Eğer sadece hiç var 902 00:49:03,920 --> 00:49:08,920 boyutu ne endişelenecek ne zaman bir şey ekliyoruz, 903 00:49:08,920 --> 00:49:15,710 bir sıra ile de yapmak gerekir Başınızı hesaba emin, 904 00:49:15,710 --> 00:49:20,760 Çünkü kuyruklar hakkında serin şey olduğunu Eğer kapasitede değilseniz, 905 00:49:20,760 --> 00:49:23,040 aslında etrafında sarın yapabilirsiniz. 906 00:49:23,040 --> 00:49:28,810 >> Tamam, bu yüzden bir şey-- oh, Bu korkunç tebeşir olduğunu. 907 00:49:28,810 --> 00:49:31,815 Dikkate Bir şey böyledir. 908 00:49:31,815 --> 00:49:35,514 909 00:49:35,514 --> 00:49:37,140 Biz sadece beş yaparız. 910 00:49:37,140 --> 00:49:41,810 Tamam, bu yüzden biz gidiyoruz kafa burada olduğunu söylüyorlar. 911 00:49:41,810 --> 00:49:46,140 Bu, 0, 1, 2, 3, 4'tür. 912 00:49:46,140 --> 00:49:54,210 >> Kafa var, ve Onlara bir şeyler var lütfen. 913 00:49:54,210 --> 00:49:58,340 Ve biz doğru, bir şey eklemek ister misin? 914 00:49:58,340 --> 00:50:01,170 Yani şey gerektiğini biliyorum kafa daima olmasıdır 915 00:50:01,170 --> 00:50:05,620 Bu şekilde hareket edecek ve Daha sonra döngü yeniden etrafında, tamam mı? 916 00:50:05,620 --> 00:50:10,190 >> Peki bu kuyruk doğru, alanı vardır? 917 00:50:10,190 --> 00:50:13,950 Bu, başından boşluğu vardır Bu tersi tür. 918 00:50:13,950 --> 00:50:17,920 Bu yüzden yapmamız gereken ne ise kuyruk hesaplamak gerekir. 919 00:50:17,920 --> 00:50:20,530 Eğer biliyorsanız sizin Kafa taşındı değil, kuyruk 920 00:50:20,530 --> 00:50:24,630 En sadece dizi boyutta dizini. 921 00:50:24,630 --> 00:50:30,000 >> Ama gerçekte, bir kuyruk kullanıyorsanız, Başınızı muhtemelen güncellenmektedir. 922 00:50:30,000 --> 00:50:33,890 Yani yapmanız gereken ne Aslında kuyruk hesaplamak. 923 00:50:33,890 --> 00:50:39,990 Peki ne yapmak bu formül Burada, sana izin vereceğim hangi 924 00:50:39,990 --> 00:50:42,680 adamlar düşünmek, ve o zaman bunun hakkında konuşacağım. 925 00:50:42,680 --> 00:50:49,567 926 00:50:49,567 --> 00:50:50,400 Yani bu kapasitesidir. 927 00:50:50,400 --> 00:50:55,890 928 00:50:55,890 --> 00:50:59,660 >> Yani bu aslında olacak bunu yapmak için bir yol vermek. 929 00:50:59,660 --> 00:51:03,205 930 00:51:03,205 --> 00:51:04,330 Çünkü bu durumda, ne? 931 00:51:04,330 --> 00:51:09,205 Başımızı 1 de, bizim boyut 4 olduğunu. 932 00:51:09,205 --> 00:51:11,760 933 00:51:11,760 --> 00:51:18,490 Biz 5 ile o mod, biz 0 olsun, hangi nerede biz girmelisiniz olduğunu. 934 00:51:18,490 --> 00:51:23,320 935 00:51:23,320 --> 00:51:26,080 >> Öyleyse bir sonraki durumda, Bunu yapmak için olsaydı, 936 00:51:26,080 --> 00:51:33,390 tamam, en sıradan çıkarma şey edelim diyorum. 937 00:51:33,390 --> 00:51:34,390 Bu sıradan çıkarma. 938 00:51:34,390 --> 00:51:37,740 Biz doğru, bu eleman çıkarmak? 939 00:51:37,740 --> 00:51:47,930 >> Ve şimdi bizim baş burada işaret ediyor, ve biz başka bir şey eklemek istiyorum. 940 00:51:47,930 --> 00:51:52,470 Bu temelde geri hattı, değil mi? 941 00:51:52,470 --> 00:51:55,450 Kuyruklar dizi etrafında sarabilirsiniz. 942 00:51:55,450 --> 00:51:57,310 Bu temel farklar biri. 943 00:51:57,310 --> 00:51:58,780 Yığınlar, bunu yapamazsın. 944 00:51:58,780 --> 00:52:01,140 >> Kuyruklar ile yapabilirsiniz tüm bu konularda çünkü 945 00:52:01,140 --> 00:52:03,940 Bildiğiniz ne olduğunu en son eklenen edildi. 946 00:52:03,940 --> 00:52:10,650 Her şey ilave olacak yana Bu sola doğru yönde, bu durumda, 947 00:52:10,650 --> 00:52:16,480 ve sonra etrafında sarın yapabilirsiniz Yeni elemanlar koyarak devam 948 00:52:16,480 --> 00:52:18,830 dizinin ön Gerçekten değil çünkü 949 00:52:18,830 --> 00:52:20,640 Artık dizinin ön. 950 00:52:20,640 --> 00:52:26,320 Siz başından düşünebilirsiniz Kafan aslında nerede olduğu dizi. 951 00:52:26,320 --> 00:52:29,710 >> Peki bu formül nasıl Eğer kuyruk hesaplamak. 952 00:52:29,710 --> 00:52:32,780 953 00:52:32,780 --> 00:52:35,610 Bu mantıklı mı? 954 00:52:35,610 --> 00:52:36,110 TAMAM MI. 955 00:52:36,110 --> 00:52:39,400 956 00:52:39,400 --> 00:52:44,040 Tamam, dequeue, ve sonra Siz 10 dakikanız var 957 00:52:44,040 --> 00:52:48,840 Bana herhangi bir aydınlatıcı soru sormak Ben deli olduğunu biliyorum çünkü, istiyorum. 958 00:52:48,840 --> 00:52:51,980 >> Pekala, aynı yol-- yüzden Siz fark olmadığını ben bilmiyorum 959 00:52:51,980 --> 00:52:53,450 ama CS tüm desenleri hakkında. 960 00:52:53,450 --> 00:52:57,370 Şeyler oldukça fazla olan Sadece küçük tweaks ile aynı. 961 00:52:57,370 --> 00:52:58,950 Burada Yani aynı şey. 962 00:52:58,950 --> 00:53:04,040 Biz eğer biz aslında görmek için kontrol etmeniz gerekir Sağ bizim kuyruğunda bir şey var? 963 00:53:04,040 --> 00:53:05,960 Tamam, 0'dan bizim boyut büyüktür, Say? 964 00:53:05,960 --> 00:53:06,730 Serin. 965 00:53:06,730 --> 00:53:10,690 >> Biz yaparsak, o zaman bizim baş, hareket hangi Ben sadece burada gösterdi budur. 966 00:53:10,690 --> 00:53:13,870 Biz bir daha olmasını başımızı güncelleyin. 967 00:53:13,870 --> 00:53:18,390 Ve sonra eksiltme bizim boyut ve elemanının döner. 968 00:53:18,390 --> 00:53:21,000 969 00:53:21,000 --> 00:53:26,250 >> Çok daha somut var study.cs50.net kod, 970 00:53:26,250 --> 00:53:29,440 ve ben çok gidiş tavsiye Eğer zamanınız varsa bunun üzerinden, 971 00:53:29,440 --> 00:53:30,980 Hatta sadece bir pseudo-code eğer. 972 00:53:30,980 --> 00:53:35,980 Ve siz konuşmak istiyorsanız Bana bir biri ile, bana bildirin lütfen bu 973 00:53:35,980 --> 00:53:37,500 biliyorum. 974 00:53:37,500 --> 00:53:38,770 Ben mutlu olurdum. 975 00:53:38,770 --> 00:53:42,720 Veri yapıları, eğer Eğer CS 124 almak, size olacak 976 00:53:42,720 --> 00:53:47,830 veri yapıları çok olsun biliyorum Eğlenceli ve bu sadece başlangıç. 977 00:53:47,830 --> 00:53:50,350 >> Bu yüzden zor olduğunu biliyorum. 978 00:53:50,350 --> 00:53:51,300 Tamam. 979 00:53:51,300 --> 00:53:52,410 Biz mücadele. 980 00:53:52,410 --> 00:53:53,630 Ben hala yapmak. 981 00:53:53,630 --> 00:53:56,660 Yani bu konuda çok fazla endişelenmeyin. 982 00:53:56,660 --> 00:54:02,390 >> Ama bu temelde, sizin olduğunu veri yapıları dersi çökmesine. 983 00:54:02,390 --> 00:54:03,400 Ben çok biliyorum. 984 00:54:03,400 --> 00:54:06,860 Bir şey var mı ki tekrar gitmek istersiniz? 985 00:54:06,860 --> 00:54:09,400 Biz aracılığıyla konuşmak istediğiniz bir şey? 986 00:54:09,400 --> 00:54:10,060 Evet? 987 00:54:10,060 --> 00:54:16,525 >> İZLEYİCİ: Bu örnek için, bu yüzden Yeni kuyruk o aşkın, 0 altındadır? 988 00:54:16,525 --> 00:54:17,150 HOPARLÖR 1: Evet. 989 00:54:17,150 --> 00:54:18,230 HEDEF KİTLE: Tamam. 990 00:54:18,230 --> 00:54:24,220 Öyleyse, geçiyor Eğer 1 artı 4 veya-- olurdu 991 00:54:24,220 --> 00:54:27,671 >> HOPARLÖR 1: Yani diyordun, Biz gitmek istediğinizde tekrar yapmak? 992 00:54:27,671 --> 00:54:28,296 HEDEF KİTLE: Evet. 993 00:54:28,296 --> 00:54:38,290 Eğer bir konrtol bulmaktan Yani nerede Eğer ki gelen kuyruk hesaplanması? 994 00:54:38,290 --> 00:54:44,260 >> HOPARLÖR 1: Yani kuyruk Ben bu değişti in-- oldu. 995 00:54:44,260 --> 00:54:52,010 Yani burada bu örnekte, bu oldu tamam, bakıyoruz dizi? 996 00:54:52,010 --> 00:54:54,670 Yani biz 1, 2, 3, ve 4 şeyler var. 997 00:54:54,670 --> 00:55:05,850 Yani bizim kafa 1'e eşit olduğunu var Bu nokta, bizim boyut 4'e eşittir 998 00:55:05,850 --> 00:55:07,050 Bu noktada, değil mi? 999 00:55:07,050 --> 00:55:08,960 >> Tüm bu dava kabul? 1000 00:55:08,960 --> 00:55:14,620 Bu yüzden baş artı boyutu, hangi yapmak Bize 5 verir, ve sonra biz 5 ile mod. 1001 00:55:14,620 --> 00:55:20,690 Biz 0 olduğunu bize söyler, 0 olsun nerede boşluk var bizim kuyruk vardır. 1002 00:55:20,690 --> 00:55:22,010 >> İZLEYİCİ: Bir kap nedir? 1003 00:55:22,010 --> 00:55:23,520 >> HOPARLÖR 1: kapasitesi. 1004 00:55:23,520 --> 00:55:24,020 Özür dilerim. 1005 00:55:24,020 --> 00:55:29,640 Demek dizinin boyutu. 1006 00:55:29,640 --> 00:55:35,210 1007 00:55:35,210 --> 00:55:36,047 Evet? 1008 00:55:36,047 --> 00:55:39,210 >> İZLEYİCİ: [duyulamaz] önce Biz elemanı iade? 1009 00:55:39,210 --> 00:55:46,270 >> HOPARLÖR 1: Yani biz hareket baş veya anı iade? 1010 00:55:46,270 --> 00:55:52,680 Biz bir hareket Yani, boyutunu azaltma? 1011 00:55:52,680 --> 00:55:54,150 Tut. 1012 00:55:54,150 --> 00:55:55,770 Kesinlikle başka unuttum. 1013 00:55:55,770 --> 00:56:00,646 1014 00:56:00,646 --> 00:56:01,990 Boşver. 1015 00:56:01,990 --> 00:56:04,980 Başka bir formül yok. 1016 00:56:04,980 --> 00:56:09,980 Evet, sen dönmek istiyorum Baş ve sonra geri hareket ettirin. 1017 00:56:09,980 --> 00:56:13,270 >> İZLEYİCİ: Tamam, çünkü azından bu nokta, kafa, 0'dan oldu 1018 00:56:13,270 --> 00:56:18,452 ve sonra geri dönmek istiyorum endeks 0 ve sonra kafa 1 yapmak? 1019 00:56:18,452 --> 00:56:19,870 >> HOPARLÖR 1: Sağ. 1020 00:56:19,870 --> 00:56:22,820 Ben başka olduğunu düşünüyorum Böyle bir formül tür. 1021 00:56:22,820 --> 00:56:26,970 Ben üstüne kafamı o yok Sana yanlış bir vermek istemiyorum. 1022 00:56:26,970 --> 00:56:35,470 Ama mükemmel geçerli olduğunu düşünüyorum diyelim ki, tamam, bu element-- saklamak ne olursa olsun 1023 00:56:35,470 --> 00:56:40,759 başın eleman azaltma bu-- sizin boyut, başınızı üzerinde hareket ve dönüş 1024 00:56:40,759 --> 00:56:41,800 ne olursa olsun unsurdur. 1025 00:56:41,800 --> 00:56:44,760 Bu mükemmel geçerli değil. 1026 00:56:44,760 --> 00:56:45,260 TAMAM MI. 1027 00:56:45,260 --> 00:56:48,360 1028 00:56:48,360 --> 00:56:53,560 Bu değil gibi hissediyorum most-- gibi değilsin 1029 00:56:53,560 --> 00:56:55,740 Buradan yürüyerek gidiyor gibi, evet, ben çalışır biliyorum. 1030 00:56:55,740 --> 00:56:56,880 Ben hepsi var. 1031 00:56:56,880 --> 00:56:57,670 Bu iyi. 1032 00:56:57,670 --> 00:57:00,200 Söz veriyorum. 1033 00:57:00,200 --> 00:57:05,240 Ancak veri yapıları şey olduğunu o zaman bir sürü alışmak alır. 1034 00:57:05,240 --> 00:57:10,010 Zor Muhtemelen biri şeyler, ben ders, bence. 1035 00:57:10,010 --> 00:57:15,330 >> Yani kesinlikle alır tekrarlama ve at-- I seyir 1036 00:57:15,330 --> 00:57:20,050 Gerçekten bağlantılı listeler bilmiyordum Onlarla çok fazla yaptım kadar, 1037 00:57:20,050 --> 00:57:22,550 Aynı şekilde ben yaptım Gerçekten işaretçileri anlamak 1038 00:57:22,550 --> 00:57:27,040 Ben yaşadım kadar iki öğretmek için yıl ve onunla kendi psets yapmak. 1039 00:57:27,040 --> 00:57:28,990 Bu yineleme ve çok zaman alır. 1040 00:57:28,990 --> 00:57:32,600 Ve sonunda, bu tür tıklayın edecektir. 1041 00:57:32,600 --> 00:57:36,320 >> Ama bu arada, ne tür varsa Bir üst düzey anlayış ne 1042 00:57:36,320 --> 00:57:39,321 Bu onların artılarını, do ve ne olduğu cons-- 1043 00:57:39,321 --> 00:57:41,820 biz gerçekten vurgulamak eğilimindedir, Özellikle intro ders. 1044 00:57:41,820 --> 00:57:45,511 Gibi, neden kullanmak istiyorsunuz Bir bir dizi üzerinde deneyin? 1045 00:57:45,511 --> 00:57:48,010 Gibi, pozitif nelerdir ve bunların her birinin negatif? 1046 00:57:48,010 --> 00:57:51,610 >> Ve Ticaret-off anlamak Bu yapıların her biri arasında 1047 00:57:51,610 --> 00:57:54,910 Şu anda çok daha önemli ne olduğunu. 1048 00:57:54,910 --> 00:57:58,140 Deli biri olabilir bu soru ya da iki 1049 00:57:58,140 --> 00:58:03,710 itme uygulamak için size soracağım veya pop veya Enqueue ve Dequeue uygulamak. 1050 00:58:03,710 --> 00:58:07,340 Ama çoğunlukla, bu sahip üst düzey anlayış ve daha fazla 1051 00:58:07,340 --> 00:58:09,710 sezgisel kavramak değildir aslında daha önemli 1052 00:58:09,710 --> 00:58:11,250 bunu uygulamak mümkün. 1053 00:58:11,250 --> 00:58:14,880 >> Bu gerçekten harika olurdu hepiniz eğer dışarı çıkmak ve bir deneyin uygulamak gidebiliriz, 1054 00:58:14,880 --> 00:58:19,720 ama biz mutlaka değil anlamak Şu anda en makul şey. 1055 00:58:19,720 --> 00:58:23,370 Ama isterseniz, sizin pset içinde yapabilirsiniz için, ve sonra uygulamayı alırsınız, 1056 00:58:23,370 --> 00:58:27,200 ve sonra belki olacak gerçekten anlıyorum. 1057 00:58:27,200 --> 00:58:27,940 Evet? 1058 00:58:27,940 --> 00:58:30,440 >> İZLEYİCİ: Tamam, olanlar hangi nedenle Biz pset kullanmak demek? 1059 00:58:30,440 --> 00:58:31,916 Ben onlardan birini kullanmak gerekir mi? 1060 00:58:31,916 --> 00:58:32,540 HOPARLÖR 1: Evet. 1061 00:58:32,540 --> 00:58:34,199 Yani seçim var. 1062 00:58:34,199 --> 00:58:36,740 Ben, biz bu durumda sanırım pset biraz bahsetmek 1063 00:58:36,740 --> 00:58:40,480 Ben bu koştu çünkü. 1064 00:58:40,480 --> 00:58:47,779 Senin pset Yani, sen, sizin var denemeden veya karma tablo seçimi. 1065 00:58:47,779 --> 00:58:49,570 Bazı insanlar çalışacağız ve, çiçeklenme filtreleri kullanın 1066 00:58:49,570 --> 00:58:51,840 ancak bu teknik olarak doğru değildir. 1067 00:58:51,840 --> 00:58:55,804 Çünkü onların olasılık doğası, bazen yanlış pozitif verir. 1068 00:58:55,804 --> 00:58:57,095 Onlar olsa, içine serin bir görünüm sensin. 1069 00:58:57,095 --> 00:58:59,030 Son derece seyir tavsiye Onlara en azından. 1070 00:58:59,030 --> 00:59:03,260 Ama senin seçim var Bir karma tablo ve deneyin arasındadır. 1071 00:59:03,260 --> 00:59:06,660 Ve bu nereye olacak Eğer sözlükte yükleyin. 1072 00:59:06,660 --> 00:59:09,230 >> Ve seçmeniz gerekir senin hash fonksiyonu, 1073 00:59:09,230 --> 00:59:13,420 kaç seçmek gerekir Eğer var kovalar, ve değişecektir. 1074 00:59:13,420 --> 00:59:17,440 Daha fazla kova varsa gibi, belki daha hızlı koşacağız. 1075 00:59:17,440 --> 00:59:22,790 Ama belki bir harcıyorsun uzayın çok olsa bu şekilde. 1076 00:59:22,790 --> 00:59:26,320 Bunu anlamaya var. 1077 00:59:26,320 --> 00:59:27,140 Mmhmm? 1078 00:59:27,140 --> 00:59:29,875 >> İZLEYİCİ: Bunu daha önce söylediğim diğer karma işlevlerini kullanabilirsiniz, 1079 00:59:29,875 --> 00:59:31,750 biz yok bir karma işlev oluşturmak? 1080 00:59:31,750 --> 00:59:32,666 >> HOPARLÖR 1: sağ Evet. 1081 00:59:32,666 --> 00:59:38,150 Yani tam anlamıyla karma işlevi için, google gibi "hash fonksiyonu" 1082 00:59:38,150 --> 00:59:40,770 ve biraz serin olanları arayın. 1083 00:59:40,770 --> 00:59:43,250 Sen inşa beklenmemektedir Kendi hash fonksiyonları. 1084 00:59:43,250 --> 00:59:46,100 İnsanlar harcamak onların Bu şeyler tezler. 1085 00:59:46,100 --> 00:59:50,250 >> Yani kendi bina hakkında endişelenmeyin. 1086 00:59:50,250 --> 00:59:53,350 Ile başlamak bir online bulun. 1087 00:59:53,350 --> 00:59:56,120 Bazıları var biraz manipüle 1088 00:59:56,120 --> 00:59:59,430 yaptığınızdan emin dönüş türleri maç ve etajer, başlangıçta bu yüzden, 1089 00:59:59,430 --> 01:00:02,420 Ben bir şey kullanarak tavsiye ederim gerçekten kolay ki belki sadece 1090 01:00:02,420 --> 01:00:04,680 ilk harfi sağlamalarının. 1091 01:00:04,680 --> 01:00:08,760 Ve sonra o çalışma var bir kere, bir soğutucu karma işlevi içeren. 1092 01:00:08,760 --> 01:00:09,260 Mmhmm? 1093 01:00:09,260 --> 01:00:13,020 >> İZLEYİCİ: Bir denemek istiyorum olabilir veya verimli ama, da-- sadece zor 1094 01:00:13,020 --> 01:00:15,880 >> HOPARLÖR 1: Yani deneyin, sanırım, uygulamak için sezgisel zordur 1095 01:00:15,880 --> 01:00:18,310 ama çok hızlı. 1096 01:00:18,310 --> 01:00:20,620 Ancak, daha fazla yer kaplar. 1097 01:00:20,620 --> 01:00:25,270 Yine, bu iki optimize edebilirsiniz Farklı yollar ve yollar vardır amaçlara yönelik 1098 01:00:25,270 --> 01:00:26,770 HEDEF KİTLE: Bunu nasıl derecelendirilir vardır? 1099 01:00:26,770 --> 01:00:27,540 O matter-- mu 1100 01:00:27,540 --> 01:00:29,164 >> HOPARLÖR 1: Yani kademeli konum normal yolu. 1101 01:00:29,164 --> 01:00:31,330 Sen tasarım üzerinde kademeli gidiyoruz. 1102 01:00:31,330 --> 01:00:36,020 Hangisini seçerseniz yapmak yolu, istediğiniz o olabilir o kadar zarif emin olun 1103 01:00:36,020 --> 01:00:38,610 ve verimli olması gibi. 1104 01:00:38,610 --> 01:00:41,950 Ama bir deneyin ya da karma seçerseniz masa, sürece çalışır gibi, 1105 01:00:41,950 --> 01:00:45,350 biz ile mutluyuz. 1106 01:00:45,350 --> 01:00:48,370 Eğer bir şey kullanmak Ve bu sağlamalarının ilk harfi, yani sorun yok 1107 01:00:48,370 --> 01:00:51,410 gibi belki tasarım-bilge gibi. 1108 01:00:51,410 --> 01:00:53,410 Biz de ulaşan ediyoruz Bu semester-- nokta 1109 01:00:53,410 --> 01:00:55,340 Bilmiyorum eğer sen eğer noticed-- adamlar 1110 01:00:55,340 --> 01:00:58,780 pset notları biraz düşüş Çünkü tasarım ve etajer, 1111 01:00:58,780 --> 01:00:59,900 Bu mükemmel para cezası. 1112 01:00:59,900 --> 01:01:02,960 Bir noktaya gidiyor nerede, sizin programlar daha karmaşık alıyorsanız. 1113 01:01:02,960 --> 01:01:04,830 Daha fazla yerler vardır Eğer üzerinde artırabilirsiniz. 1114 01:01:04,830 --> 01:01:06,370 >> Yani gayet normal. 1115 01:01:06,370 --> 01:01:08,810 Bu konum değil senin pset daha kötü yapıyor. 1116 01:01:08,810 --> 01:01:11,885 Bu sadece biz şimdi size zor davranıyorsun oluyor. 1117 01:01:11,885 --> 01:01:13,732 Yani herkes bunu hissediyor. 1118 01:01:13,732 --> 01:01:14,940 Ben sadece bütün psets kademeli. 1119 01:01:14,940 --> 01:01:16,490 Ben herkesin duygu biliyorum. 1120 01:01:16,490 --> 01:01:19,600 >> Peki bu konuda endişeli olmayın. 1121 01:01:19,600 --> 01:01:23,580 Ve hakkında herhangi bir sorunuz varsa önceki psets veya artırabilir yolları, 1122 01:01:23,580 --> 01:01:27,760 Ben denemek ve özel yorum yerler, ama bazen geç 1123 01:01:27,760 --> 01:01:30,840 ve ben yoruluyorum. 1124 01:01:30,840 --> 01:01:34,885 Başka şeyler var mı hakkında veri yapıları? 1125 01:01:34,885 --> 01:01:37,510 Ben sizler gerçekten yapmak eminim Artık onlar hakkında konuşmak istiyorum, 1126 01:01:37,510 --> 01:01:42,650 varsa ancak, ben mutluyum şey gibi, onların üzerinde gitmek 1127 01:01:42,650 --> 01:01:45,580 dersin bu geçmiş itibaren hafta veya geçen hafta. 1128 01:01:45,580 --> 01:01:51,580 >> Ben bu yüzden, geçen hafta tüm yorum olduğunu biliyorum bazı inceleme üzerinden atlanır olabilir 1129 01:01:51,580 --> 01:01:54,190 Dersin gelen. 1130 01:01:54,190 --> 01:01:58,230 Ben cevap verebilir Başka soru? 1131 01:01:58,230 --> 01:01:59,350 Tamam, tamam. 1132 01:01:59,350 --> 01:02:02,400 Peki, siz 15 dakika erken çıkmak. 1133 01:02:02,400 --> 01:02:08,370 >> Ben, bu en azından yarı-yardımcı oldu umuyoruz ve ben önümüzdeki hafta sizleri göreceksiniz, 1134 01:02:08,370 --> 01:02:12,150 veya Perşembe ofis saatleri. 1135 01:02:12,150 --> 01:02:15,285 Aperatifler için var istekleri vardır Gelecek hafta, bu şey? 1136 01:02:15,285 --> 01:02:17,459 Ben bugün şeker unuttum çünkü. 1137 01:02:17,459 --> 01:02:19,750 Ve ben son şeker getirdim hafta, ama, Columbus Günü 1138 01:02:19,750 --> 01:02:25,400 yani altı kişi var gibi kim kendilerine şeker dört torba vardı. 1139 01:02:25,400 --> 01:02:28,820 Ben starbursts getirebilir sizin gibi yine eğer. 1140 01:02:28,820 --> 01:02:29,580 Starbursts? 1141 01:02:29,580 --> 01:02:32,250 Tamam, iyi geliyor. 1142 01:02:32,250 --> 01:02:35,050 , Büyük bir gün adamlar var. 1143 01:02:35,050 --> 01:02:39,510