1 00:00:00,000 --> 00:00:08,532 >> [מוזיק פּלייַינג] 2 00:00:08,532 --> 00:00:12,060 >> זאַמילאַ טשאַן: דער ערשטער זאַך איר זאל באַמערקן וועגן געפינען איז אַז מיר שוין 3 00:00:12,060 --> 00:00:13,450 האָבן קאָוד געשריבן פֿאַר אונדז. 4 00:00:13,450 --> 00:00:15,160 דעם איז גערופן פאַרשפּרייטונג קאָד. 5 00:00:15,160 --> 00:00:18,000 אַזוי מיר ניטאָ ניט נאָר שרייבט אונדזער אייגן קאָד פון קראַצן ענימאָר. 6 00:00:18,000 --> 00:00:22,800 גאַנץ, מיר 'רע פילונג אין די וווידז אין עטלעכע פאַר - יגזיסטינג קאָד. 7 00:00:22,800 --> 00:00:27,790 >> די פינד.ק פּראָגראַם פּראַמפּס פֿאַר נומערן צו פּלאָמבירן די כייסטאַק, אָנפֿרעגן די 8 00:00:27,790 --> 00:00:32,189 כייסטאַק פֿאַר אַ באַניצער דערלאנגט נאָדל, און עס טוט דעם דורך פאַך סאָרט און 9 00:00:32,189 --> 00:00:35,590 זוכן, פאַנגקשאַנז דיפיינד אין העלפּערס.ק. 10 00:00:35,590 --> 00:00:37,670 אַזוי פינד.ק איז געשריבן שוין. 11 00:00:37,670 --> 00:00:40,770 דיין אַרבעט איז צו שרייַבן העלפּערס. 12 00:00:40,770 --> 00:00:41,870 >> אַזוי וואָס זענען מיר טאן? 13 00:00:41,870 --> 00:00:44,210 מיר ניטאָ ימפּלאַמענינג צוויי פאַנגקשאַנז. 14 00:00:44,210 --> 00:00:49,030 זוכן, וואָס קערט אמת אויב אַ ווערט איז געפונען אין דער כייסטאַק, אומגעקערט 15 00:00:49,030 --> 00:00:51,370 פאַלש אויב די ווערט איז ניט אין דער כייסטאַק. 16 00:00:51,370 --> 00:00:57,990 און דעמאָלט מיר ניטאָ אויך ימפּלאַמענינג סאָרט וואָס סאָרץ די מענגע גערופן וואַלועס. 17 00:00:57,990 --> 00:00:59,960 >> אַזוי לאָזן ס מאַכנ זוכן. 18 00:00:59,960 --> 00:01:04,560 זוכן איז איצט ימפּלאַמענטאַד ווי אַ לינעאַר זוכן, אָבער איר קענען טאָן פיל 19 00:01:04,560 --> 00:01:05,550 בעסער ווי אַז. 20 00:01:05,550 --> 00:01:09,910 לינעאַר זוכן איז ימפּלאַמענטאַד אין אָ פון N צייַט, וואָס איז גאַנץ פּאַמעלעך. 21 00:01:09,910 --> 00:01:13,850 כאָטש, עס קענען זוכן קיין רשימה געגעבן צו עס. 22 00:01:13,850 --> 00:01:20,130 דיין אַרבעט איז צו מאַכשער ביינערי זוכן, וואָס האט לויפן צייַט אָ פון קלאָץ N. 23 00:01:20,130 --> 00:01:21,130 אַז ס שיין שנעל. 24 00:01:21,130 --> 00:01:23,170 >> אבער עס ס אַ סטיפּיאַליישאַן. 25 00:01:23,170 --> 00:01:27,600 ביינערי זוכן קענען בלויז זוכן דורך פאַר - אויסגעשטעלט רשימות. 26 00:01:27,600 --> 00:01:30,370 וואָס איז אַז? 27 00:01:30,370 --> 00:01:32,620 >> גוט לאָזן ס קוק בייַ אַ בייַשפּיל. 28 00:01:32,620 --> 00:01:36,280 געגעבן אַ מענגע פון ​​וואַלועס, די כייסטאַק, מיר ניטאָ געגאנגען צו זיין קוקן 29 00:01:36,280 --> 00:01:37,130 פֿאַר אַ נאָדל. 30 00:01:37,130 --> 00:01:40,460 און אין דעם בייַשפּיל, די ינטאַדזשער דרייַ. 31 00:01:40,460 --> 00:01:44,130 די וועג אַז ביינערי זוכן אַרבעט איז אַז מיר פאַרגלייַכן די מיטל ווערט פון 32 00:01:44,130 --> 00:01:48,370 די מענגע צו די נאָדל, פיל ווי ווי מיר געעפנט אַ טעלעפון בוך צו די מיטל 33 00:01:48,370 --> 00:01:50,660 בלאַט אין וואָך נול. 34 00:01:50,660 --> 00:01:54,650 >> אַזוי נאָך קאַמפּערינג די מיטל ווערט צו די נאָדל, איר קענען אַוועקוואַרפן אָדער די 35 00:01:54,650 --> 00:01:58,530 לינקס אָדער די רעכט העלפט פון די מענגע דורך טייטנינג דיין גווול. 36 00:01:58,530 --> 00:02:03,390 אין דעם פאַל, זינט דרייַ, אונדזער נאָדל, איז ווייניקער ווי 10, די מיטל ווערט, די 37 00:02:03,390 --> 00:02:05,990 רעכט געבונדן קענען פאַרמינערן. 38 00:02:05,990 --> 00:02:08,400 אבער פּרובירן צו מאַכן אייער גווול ווי ענג ווי מעגלעך. 39 00:02:08,400 --> 00:02:11,630 אויב די מיטל ווערט איז ניט דער נאָדל, דעמאָלט איר וויסן אַז איר טאָן ניט דאַרפֿן צו 40 00:02:11,630 --> 00:02:13,010 אַרייַננעמען עס אין אייער זוכן. 41 00:02:13,010 --> 00:02:17,310 אַזוי איר ניטאָ רעכט געבונדן קענען פאַרשטייַפן די זוכן גווול נאָר אַ קליינטשיק ביסל מער, 42 00:02:17,310 --> 00:02:21,770 און אַזוי אויף און אַזוי אַרויס ביז איר געפינען דיין נאָדל. 43 00:02:21,770 --> 00:02:23,480 >> אַזוי וואָס טוט די פּסעודאָקאָדע קוקן ווי? 44 00:02:23,480 --> 00:02:28,420 גוט בשעת מיר ניטאָ נאָך קוקן דורך דער רשימה און נאָך האָבן יסודות צו 45 00:02:28,420 --> 00:02:33,690 קוק אין, מיר נעמען די מיטל פון דער רשימה, און פאַרגלייַכן אַז מיטל ווערט צו 46 00:02:33,690 --> 00:02:34,950 אונדזער נאָדל. 47 00:02:34,950 --> 00:02:37,310 אויב זיי ניטאָ גלייַך, דעמאָלט אַז מיטל מיר 'ווע געפונען די נאָדל און מיר קענען 48 00:02:37,310 --> 00:02:38,990 צוריקקומען אמת. 49 00:02:38,990 --> 00:02:42,870 >> אַנדערש, אויב די נאָדל איז ווייניקער ווי די מיטל ווערט, דעמאָלט אַז מיטל מיר 50 00:02:42,870 --> 00:02:47,280 קענען אַוועקוואַרפן די רעכט העלפט, און פּונקט זוכן די לינק זייַט פון די מענגע. 51 00:02:47,280 --> 00:02:51,090 אַנדערש, מיר וועט זוכן די רעכט זייַט פון די מענגע. 52 00:02:51,090 --> 00:02:54,410 און אין די סוף, אויב איר טאָן ניט האָבן קיין מער יסודות לינק צו זוכן אָבער איר 53 00:02:54,410 --> 00:02:58,050 האָבן ניט געפונען דיין נאָדל נאָך, דעמאָלט איר צוריקקומען פאַלש ווייַל די נאָדל 54 00:02:58,050 --> 00:03:01,890 באשטימט איז ניט אין דער כייסטאַק. 55 00:03:01,890 --> 00:03:05,270 >> איצט אַ ציכטיק זאַך וועגן דעם פּסעודאָקאָדע אין ביינערי זוכן איז אַז עס קענען זיין 56 00:03:05,270 --> 00:03:09,940 ינטערפּראַטאַד ווי אָדער אַ יטערייטיוו אָדער רעקורסיווע ימפּלאַמענטיישאַן. 57 00:03:09,940 --> 00:03:13,810 אַזוי עס וואָלט זיין רעקורסיווע אויב איר גערופן די זוכן פֿונקציע ין דער זוכן 58 00:03:13,810 --> 00:03:17,350 פונקציאָנירן אויף אָדער העלפט פון די מענגע. 59 00:03:17,350 --> 00:03:21,030 מיר וועט דעקן רעקורסיאָן אַ ביסל שפּעטער אין די קורס, אָבער טאָן וויסן אַז עס איז אַ 60 00:03:21,030 --> 00:03:24,190 אָפּציע אויב איר 'ד ווי צו פּרובירן. 61 00:03:24,190 --> 00:03:26,030 >> איצט לאָזן ס קוק אין סאָרט. 62 00:03:26,030 --> 00:03:30,750 סאָרט נעמט אַ מענגע און די ינטעגער ן, וואָס איז די נומער פון די מענגע. 63 00:03:30,750 --> 00:03:34,030 איצט עס זענען פאַרשידן פאַרשידענע טייפּס פון סאָרץ, און איר קענען קוקן אין עטלעכע 64 00:03:34,030 --> 00:03:36,370 קורצע הייזלעך פֿאַר דעמאָס און דערקלערונגען. 65 00:03:36,370 --> 00:03:39,580 דער צוריקקער טיפּ פֿאַר אונדזער סאָרט פֿונקציע איז פּאָסל. 66 00:03:39,580 --> 00:03:43,580 אַזוי אַז מיטל אַז מיר ניטאָ ניט געגאנגען צו צוריקקומען קיין מענגע פון ​​סאָרט. 67 00:03:43,580 --> 00:03:48,140 מיר ניטאָ פאקטיש געגאנגען צו טוישן די זייער מענגע אַז איז דורכגעגאנגען אין אונדז. 68 00:03:48,140 --> 00:03:52,290 >> און אַז ס מעגלעך ווייַל ערייז זענען דורכגעגאנגען דורך דערמאָנען אין סי איצט מיר וועט 69 00:03:52,290 --> 00:03:55,290 זען מער וועגן דעם שפּעטער, אָבער די יקערדיק חילוק צווישן גייט פארביי 70 00:03:55,290 --> 00:03:59,340 אין עפּעס ווי אַ ינטאַדזשער און גייט פארביי אין אַ מענגע, איז אַז ווען איר 71 00:03:59,340 --> 00:04:03,490 פאָרן אין אַ ינטאַדזשער, C איז נאָר געגאנגען צו מאַכן אַ קאָפּיע פון ​​וואָס ינטעגער און פאָרן 72 00:04:03,490 --> 00:04:04,450 עס צו די פֿונקציע. 73 00:04:04,450 --> 00:04:08,530 דער אָריגינעל בייַטעוודיק וועט ניט ווערן פארענדערט אַמאָל די פֿונקציע איז פאַרטיק. 74 00:04:08,530 --> 00:04:12,480 מיט אַ מענגע, אויף די אנדערע האנט, עס ס ניט געגאנגען צו מאַכן אַ קאָפּיע, און איר וועט 75 00:04:12,480 --> 00:04:17,910 פאקטיש זיין עדיטינג די זייער מענגע זיך. 76 00:04:17,910 --> 00:04:21,269 >> אַזוי איין טיפּ פון סאָרט איז די סעלעקציע סאָרט. 77 00:04:21,269 --> 00:04:24,750 די סעלעקציע סאָרט אַרבעט דורך סטאַרטינג בייַ די אָנהייב, און דעמאָלט איר יטעראַטע 78 00:04:24,750 --> 00:04:26,820 איבער און געפינען די קלענסטער עלעמענט. 79 00:04:26,820 --> 00:04:30,710 און דעמאָלט איר ויסבייַטן אַז קלענסטער עלעמענט מיט דער ערשטער איינער. 80 00:04:30,710 --> 00:04:34,360 און דעמאָלט איר מאַך צו די רגע עלעמענט , געפינען דער ווייַטער קלענסטער 81 00:04:34,360 --> 00:04:38,320 עלעמענט, און דעמאָלט ויסבייַטן אַז מיט די רגע עלעמענט אין דער מענגע ווייַל 82 00:04:38,320 --> 00:04:41,100 דער ערשטער עלעמענט איז שוין אויסגעשטעלט. 83 00:04:41,100 --> 00:04:45,370 און אַזוי דעמאָלט איר פאָרזעצן פֿאַר יעדער עלעמענט אין יידענטאַפייינג די סמאָלאַסט 84 00:04:45,370 --> 00:04:47,690 ווערט און סוואַפּינג עס אויס. 85 00:04:47,690 --> 00:04:53,460 >> פֿאַר איך יקוואַלז 0, די זייער ערשטער עלעמענט צו N מינוס 1, איר ניטאָ געגאנגען צו פאַרגלייַכן 86 00:04:53,460 --> 00:04:57,820 יעדער ווייַטער ווערט נאָך אַז און געפינען די אינדעקס פון די מינימום ווערט. 87 00:04:57,820 --> 00:05:02,520 אַמאָל איר געפינען די מינימום ווערט אינדעקס, איר קענען ויסבייַטן אַז ווערט פון מענגע 88 00:05:02,520 --> 00:05:05,930 מינימום און מענגע אויך 89 00:05:05,930 --> 00:05:09,760 >> אן אנדער טיפּ פון סאָרט אַז איר קענען מאַכשער איז בלאָז סאָרט. 90 00:05:09,760 --> 00:05:14,380 אַזוי בלאָז סאָרט יטעראַטעס איבער דער רשימה קאַמפּערינג שכייניש יסודות און 91 00:05:14,380 --> 00:05:17,720 סוואַפּינג די יסודות אַז זענען אין דעם אומרעכט סדר. 92 00:05:17,720 --> 00:05:22,380 און דעם וועג, די גרעסטן עלעמענט וועט בלאָז צו די סוף. 93 00:05:22,380 --> 00:05:28,070 און די רשימה איז אויסגעשטעלט אַמאָל ניט מער עלעמענטן האָבן שוין סוואַפּט. 94 00:05:28,070 --> 00:05:31,920 >> אַזוי די זענען צוויי ביישפילן פון סאָרט אַלגערידאַמז אַז איר קענען מאַכשער פֿאַר 95 00:05:31,920 --> 00:05:33,230 די געפינען פּראָגראַם. 96 00:05:33,230 --> 00:05:37,350 אַמאָל איר ענדיקן סאָרט, און איר 'ווע געטאן זוכן, איר ניטאָ פאַרטיק. 97 00:05:37,350 --> 00:05:39,720 מיין נאָמען איז זאַמילאַ, און דעם איז קס50. 98 00:05:39,720 --> 00:05:46,987 >> [מוזיק פּלייַינג]