1 00:00:00,000 --> 00:00:02,892 >> [Music kucheza] 2 00:00:02,892 --> 00:00:05,347 3 00:00:05,347 --> 00:00:07,180 DOUG LLOYD: Linear search ni algorithm sisi 4 00:00:07,180 --> 00:00:09,840 unaweza kutumia ili kupata kipengele katika safu. 5 00:00:09,840 --> 00:00:11,990 Wanakumbuka algorithm ni hatua kwa hatua ya kuweka 6 00:00:11,990 --> 00:00:15,030 maelekezo kwa ajili ya kukamilisha kazi. 7 00:00:15,030 --> 00:00:17,480 >> Tafuta linear algorithm kazi kama ifuatavyo. 8 00:00:17,480 --> 00:00:22,200 Iterate hela safu kutoka kushoto kwenda haki, kuangalia kwa kipengele maalum. 9 00:00:22,200 --> 00:00:26,380 >> Katika pseudocode, ambayo ni zaidi distilled toleo la hukumu hii, 10 00:00:26,380 --> 00:00:29,840 kama kitu cha kwanza ni kile wewe kutafuta, unaweza kuacha. 11 00:00:29,840 --> 00:00:33,930 Vinginevyo, hoja ya kipengele ijayo na kuendelea tena na tena mpaka kupata 12 00:00:33,930 --> 00:00:36,389 kipengele, au huna. 13 00:00:36,389 --> 00:00:38,680 Ili tuweze kutumia linear search algorithm, kwa mfano, 14 00:00:38,680 --> 00:00:42,330 kupata thamani Lengo tisa katika safu hii. 15 00:00:42,330 --> 00:00:43,870 Naam sisi kuanza mwanzoni. 16 00:00:43,870 --> 00:00:45,970 Kama ni nini tuko kutafuta, tunaweza kuacha. 17 00:00:45,970 --> 00:00:47,890 Siyo, sisi siyo kuangalia kwa 11. 18 00:00:47,890 --> 00:00:50,220 Hivyo vinginevyo, hoja ya kipengele ijayo. 19 00:00:50,220 --> 00:00:51,510 >> Hivyo sisi kuangalia 23. 20 00:00:51,510 --> 00:00:52,730 Ni 23 nini sisi ni kuangalia kwa? 21 00:00:52,730 --> 00:00:55,614 Naam hakuna, hivyo sisi kuhamia kwenye ijayo kipengele, na kipengele ijayo, 22 00:00:55,614 --> 00:00:57,780 na sisi kuendelea kwenda kwa mchakato huu tena na tena 23 00:00:57,780 --> 00:01:01,030 na tena, mpaka sisi ardhi juu ya hali kama hii. 24 00:01:01,030 --> 00:01:03,910 >> Tisa ni nini sisi ni kuangalia kwa, na kipengele hiki cha safu 25 00:01:03,910 --> 00:01:05,787 yaani, thamani yake ni tisa. 26 00:01:05,787 --> 00:01:08,120 Na hivyo sisi kupatikana nini tuko kutafuta, na tunaweza kuacha. 27 00:01:08,120 --> 00:01:11,910 Tafuta linear ina kukamilika, kwa mafanikio. 28 00:01:11,910 --> 00:01:15,370 >> Lakini nini kuhusu kama sisi ni kuangalia kwa kipengele kwamba si katika safu yetu. 29 00:01:15,370 --> 00:01:17,040 Je, linear la bado kazi? 30 00:01:17,040 --> 00:01:17,540 Naam uhakika. 31 00:01:17,540 --> 00:01:19,947 Kwa hiyo sisi kurudia utaratibu huu kuanzia saa kipengele kwanza. 32 00:01:19,947 --> 00:01:21,780 Kama ni nini tuko kutafuta, tunaweza kuacha. 33 00:01:21,780 --> 00:01:22,800 Sio. 34 00:01:22,800 --> 00:01:25,020 Vinginevyo, sisi hoja ya kipengele ijayo. 35 00:01:25,020 --> 00:01:29,050 >> Lakini tunaweza kuendelea kurudia utaratibu huu, kuchunguza kila kipengele kwa upande wake, 36 00:01:29,050 --> 00:01:31,720 matumaini kwamba sisi kupata idadi 50. 37 00:01:31,720 --> 00:01:33,750 Lakini hatutaweza kujua kama tumekuwa kupatikana idadi 50 38 00:01:33,750 --> 00:01:38,290 au kama hatukuwa, mpaka tumekuwa kupitiwa juu ya kila kipengele moja ya safu. 39 00:01:38,290 --> 00:01:40,440 >> Tu mara moja tumefanya kuwa na kuja mfupi, 40 00:01:40,440 --> 00:01:43,040 Tunaweza kuhitimisha kwamba 50 siyo katika safu. 41 00:01:43,040 --> 00:01:46,410 Na hivyo tafuta linear algorithm, vizuri alishindwa, per se. 42 00:01:46,410 --> 00:01:49,181 Lakini si kwa maana kwamba hakufaulu katika kufanya yaliyo 43 00:01:49,181 --> 00:01:49,930 sisi aliuliza kufanya. 44 00:01:49,930 --> 00:01:52,390 >> Ilikuwa ni aliyeshindwa katika kama vile ni hawakuona 50, 45 00:01:52,390 --> 00:01:54,070 lakini 50 hakuwa katika safu. 46 00:01:54,070 --> 00:01:57,310 Lakini sisi vyema msako kupitia kila kipengele moja 47 00:01:57,310 --> 00:02:00,550 na hivyo, wakati sisi hawakuona kitu chochote, tafuta linear bado 48 00:02:00,550 --> 00:02:05,230 inafanikiwa hata kama kipengele ni si katika safu. 49 00:02:05,230 --> 00:02:07,507 >> Basi nini hali mbaya mazingira na tafuta linear? 50 00:02:07,507 --> 00:02:09,590 Vizuri inabidi kuangalia njia kila kipengele moja, 51 00:02:09,590 --> 00:02:14,590 ama kwa sababu lengo kipengele ni kipengele mwisho wa safu, 52 00:02:14,590 --> 00:02:18,510 au kipengele sisi ni kuangalia kwa hana kweli zipo katika safu wakati wote. 53 00:02:18,510 --> 00:02:19,760 Nini bora kesi mazingira? 54 00:02:19,760 --> 00:02:22,430 Naam tunaweza kukuta kipengele mara moja. 55 00:02:22,430 --> 00:02:24,360 Na jinsi mambo mengi Je, sisi kisha kuwa na kuangalia 56 00:02:24,360 --> 00:02:26,859 katika katika kesi bora, kama sisi ni kuangalia kwa ajili yake 57 00:02:26,859 --> 00:02:28,400 na tunapata ni mwanzoni kabisa? 58 00:02:28,400 --> 00:02:29,850 Tunaweza kuacha mara moja. 59 00:02:29,850 --> 00:02:32,984 >> Je, hii inasema nini kuhusu utata wa tafuta linear? 60 00:02:32,984 --> 00:02:35,650 Vizuri katika hali mbaya zaidi, tuna kuangalia kila kipengele moja. 61 00:02:35,650 --> 00:02:38,930 Na hivyo ni anaendesha katika O wa n, katika hali mbaya zaidi. 62 00:02:38,930 --> 00:02:41,540 >> Katika kesi bora, sisi ni gonna kupata kipengele mara moja. 63 00:02:41,540 --> 00:02:44,750 Na hivyo anaendesha katika omega ya 1. 64 00:02:44,750 --> 00:02:45,780 >> Mimi nina Doug Lloyd. 65 00:02:45,780 --> 00:02:48,020 Hii ni CS50. 66 00:02:48,020 --> 00:02:49,876