באַגאַזלענען באָודאַן: הי, איך בין ראָב. ווי טאָן מיר ניצן אַ ביינערי זוכן? זאל ס געפינען אויס. אַזוי, טאָן אַז דעם זוכן מיר ניטאָ געגאנגען צו מאַכשער רעקורסיוועלי. איר קען אויך מאַכשער ביינערי זוכן יטעראַטיוועלי, אַזוי אויב איר האט אַז, אַז ס בישליימעס פייַן. איצט ערשטער, לאָזן ס געדענקען וואָס די פּאַראַמעטערס צו זוכן זענען מענט צו זיין. דאָ, מיר זען ינט ווערט, וואָס איז געמיינט צו זיין די ווערט דער באַניצער איז שאַרף פֿאַר. מיר זען די ינט וואַלועס מענגע, וואָס איז די מענגע אין וואָס מיר ניטאָ שאַרף פֿאַר ווערט. און מיר זען ינט ן, וואָס איז די לענג פון אונדזער מענגע. איצט, ערשטער זאַך ערשטער. מיר קאָנטראָלירן צו זען אויב N יקוואַלז 0, אין וואָס פאַל מיר צוריקקומען פאַלש. אַז ס נאָר זאגן אויב מיר האָבן אַ ליידיק מענגע, ווערט איז קלאר נישט אין אַ ליידיק מענגע, אַזוי מיר קענען צוריקקומען פאַלש. איצט, מיר פאקטיש ווילן צו טאָן די ביינערי זוכן טייל פון ביינערי זוכן. אַזוי, מיר ווילן צו געפינען די מיטל עלעמענט פון דעם מענגע. דאָ, מיר זאָגן מיטן יקוואַלז N צעטיילט דורך 2, זינט די מיטל עלעמענט איז געגאנגען צו זיין די לענג פון אונדזער מענגע צעטיילט דורך 2. איצט מיר ניטאָ געגאנגען צו קאָנטראָלירן צו זען אויב די מיטל עלעמענט יקוואַלז די ווערט מיר ניטאָ שאַרף פֿאַר. אַזוי אויב וואַלועס מיטל יקוואַלז ווערט, מיר קענען צוריקקומען אמת זינט מיר געפונען די ווערט אין אונדזער מענגע. אבער אויב אַז איז ניט אמת, איצט מיר דאַרפֿן צו טאָן די רעקורסיווע שריט פון ביינערי זוכן. מיר דאַרפֿן צו זוכן אָדער צו די לינקס פון די מענגע אָדער צו די מיטל פון די מענגע. אַזוי דאָ, מיר זאָגן אויב וואַלועס אין מיטל איז ווייניקער ווי ווערט, אַז מיטל אַז ווערט איז גרעסער ווי די מיטל פון די מענגע. אַזוי ווערט מוזן זיין צו די רעכט פון די עלעמענט אַז מיר נאָר געקוקט בייַ. אַזוי דאָ, מיר ניטאָ געגאנגען צו זוכן רעקורסיוועלי. און מיר וועט קוקן אין וואָס מיר ניטאָ גייט פארביי צו דעם אין אַ רגע. אבער מיר ניטאָ געגאנגען צו זוכן צו די רעכט פון די מיטל עלעמענט. און אין די אנדערע פאַל, אַז מיטל אַז ווערט איז געווען ווייניקער ווי די מיטן פון די מענגע, און אַזוי מיר ניטאָ געגאנגען צו זוכן צו די לינק. איצט, די לינק איז געגאנגען צו זיין אַ ביסל גרינגער צו קוקן בייַ. אַזוי, מיר זען דאָ אַז מיר ניטאָ רעקורסיוועלי פאַך זוכן ווו דער ערשטער אַרגומענט איז, ווידער, די ווערט מיר 'רע איר זוכט איבער. די רגע אַרגומענט איז געגאנגען צו זיין דער מענגע אַז מיר זענען שאַרף איבער. און די לעצטע עלעמענט איצט איז מיטן. געדענקען די לעצטע פּאַראַמעטער איז אונדזער ינט ן, אַזוי אַז ס די לענג פון אונדזער מענגע. אין די רעקורסיווע רופן צו זוכן, מיר ניטאָ איצט געזאגט אַז די לענג פון די מענגע איז מיטן. אַזוי, אויב אונדזער מענגע איז פון גרייס 20 און מיר געזוכט אין אינדעקס 10, זינט מיטן איז 20 צעטיילט דורך 2, אַז מיטל מיר ניטאָ גייט פארביי 10 ווי די נייַ לענג פון אונדזער מענגע. געדענקען אַז ווען איר האָבן אַ מענגע פון לענג 10, אַז מיטל די גילטיק עלעמענטן זענען אין ינדיסעס 0 דורך 9. אַזוי דעם איז פּונקט וואָס מיר ווילן צו ספּעציפיצירן אונדזער דערהייַנטיקט מענגע - די לינק מענגע פון ​​די מיטל עלעמענט. אַזוי, קוקן צו די רעכט איז אַ ביסל מער שווער. איצט ערשטער, לאָזן ס באַטראַכטן די לענג פון די מענגע צו די רעכט פון די מיטל עלעמענט. אַזוי, אויב אונדזער מענגע איז פון גרייס N, דעמאָלט דער נייַ מענגע וועט זיין פון גרייס N מינוס מיטל מינוס 1. אַזוי, לאָזן ס טראַכטן פון N מינוס מיטל. ווידער, אויב די מענגע זענען פון גרייס 20 און מיר טיילן דורך 2 צו באַקומען די מיטל, אַזוי די מיטל איז 10, דעמאָלט N מינוס מיטל איז געגאנגען צו געבן אונדז 10, אַזוי 10 יסודות צו די רעכט פון מיטל. אבער מיר אויך האָבן דעם מינוס 1, זינט מיר טאָן ניט ווילן צו אַרייַננעמען די מיטל זיך. אַזוי N מינוס מיטל מינוס 1 גיט אונדז די גאַנץ נומער פון עלעמענטן צו די רעכט פון די מיטל אינדעקס אין די מענגע. איצט דאָ, געדענקען אַז די מיטל פּאַראַמעטער איז די וואַלועס מענגע. אַזוי דאָ, מיר ניטאָ גייט פארביי אַ דערהייַנטיקט וואַלועס מענגע. דעם וואַלועס פּלוס מיטל פּלוס 1 איז פאקטיש געזאגט רעקורסיוועלי רופן זוכן, גייט פארביי אין אַ נייַ מענגע, ווו אַז נייַ מענגע סטאַרץ אין די מיטל פּלוס איינער פון אונדזער אָריגינעל וואַלועס מענגע. אַ בייַטנ לויט דער ריי סינטאַקס פֿאַר אַז, איצט אַז איר 'ווע סטאַרטעד צו זען פּוינטערז, איז דאָזיקן & מיינט וואַלועס מיטל פּלוס 1. אַזוי, כאַפּן די אַדרעס פון די מיטל פּלוס איינער עלעמענט פון וואַלועס. איצט, אויב איר זענען ניט באַקוועם מאַדאַפייינג אַ מענגע ווי אַז, איר קען אויך האָבן ימפּלאַמענטאַד דעם ניצן אַ רעקורסיווע העלפּער פֿונקציע, ווו אַז העלפּער פונקציאָנירן נעמט מער טענות. אַזוי אַנשטאָט פון גענומען נאָר די ווערט, די מענגע, און די גרייס פון דעם מענגע, די העלפּער פונקציאָנירן קען נעמען מער טענות, אַרייַנגערעכנט דער נידעריקער אינדעקס אַז איר וואָלט זאָרגן וועגן אין די מענגע און דער אויבערשטער אינדעקס אַז איר זאָרגן וועגן די מענגע. און אַזוי בעכעסקעם שפּור פון ביידע דער נידעריקער אינדעקס און דער אויבערשטער אינדעקס, איר טאָן ניט דאַרפֿן צו אלץ מאָדיפיצירן די אָריגינעל וואַלועס מענגע. איר קענען נאָר פאָרזעצן צו נוצן די וואַלועס מענגע. אבער דאָ, באַמערקן מיר טאָן ניט דאַרפֿן אַ העלפער פונקציאָנירן ווי לאַנג ווי מיר ניטאָ גרייט צו מאָדיפיצירן דער אָריגינעל וואַלועס מענגע. מיר ניטאָ גרייט צו פאָרן אין אַ דערהייַנטיקט וואַלועס. איצט, מיר קענען נישט ביינערי זוכן איבער אַ מענגע וואָס איז ונסאָרטעד. אַזוי, לאָזן ס באַקומען דעם אויסגעשטעלט אויס. איצט, באַמערקן אַז סאָרט איז פאַרגאַנגענהייַט צוויי פּאַראַמעטערס ינט וואַלועס, וואָס איז די מענגע אַז מיר ניטאָ סאָרטינג, און ינט ן, וואָס איז די לענג פון די מענגע אַז מיר ניטאָ סאָרטינג. אַזוי, דאָ מיר ווילן צו מאַכשער אַ סאָרטינג אַלגערידאַם וואָס איז אָ פון N סקווערד. איר קען קלייַבן בלאָז סאָרט, סעלעקציע סאָרט, אָדער ינסערשאַן סאָרט, אָדער עטלעכע אנדערע סאָרט מיר האָבן ניט געזען אין קלאַס. אָבער דאָ, מיר ניטאָ גיי צו נוצן סעלעקציע סאָרט. אַזוי, מיר 'רע געגאנגען צו יטעראַטע איבער די גאנצע מענגע. נו, דאָ מיר זען אַז מיר ניטאָ יטעראַטינג פון 0 צו N מינוס 1. פארוואס ניט אַלע די וועג אַרויף צו N? נו, אויב מיר 'ווע שוין אויסגעשטעלט די ערשטער N מינוס 1 יסודות, דעמאָלט דער זייער לעצט עלעמענט וואָס מוזן שוין זיין אין די ריכטיק אָרט, אַזוי סאָרטינג איבער די גאנצע מענגע. איצט, געדענקען ווי סעלעקציע סאָרט אַרבעט. מיר ניטאָ געגאנגען צו גיין איבער די גאנצע מענגע איר זוכט פֿאַר די מינימום ווערט אין די מענגע און שטעקן אַז אין די אָנהייב. דעמאָלט מיר ניטאָ געגאנגען צו גיין איבער די גאנצע מענגע ווידער קוקן פֿאַר די צווייט קלענסטער עלעמענט, און שטעקן אַז אין די רגע שטעלע אין דער מענגע, און אַזוי אויף. אַזוי, אַז ס וואָס דאָס איז טאן. דאָ, מיר ניטאָ געזען אַז מיר ניטאָ באַשטעטיקן דעם קראַנט מינימום ווערט צו די איך טה אינדעקס. אַזוי אויף דער ערשטער יטעראַטיאָן, מיר ניטאָ געגאנגען צו באַטראַכטן די מינימום ווערט צו זיין די אָנהייב פון אונדזער מענגע. דעמאָלט, מיר ניטאָ געגאנגען צו יטעראַטע איבער די רעשט פון די מענגע, טשעק צו זען אויב עס קיין יסודות קלענערער ווי דער איינער אַז מיר ניטאָ איצט קאָנסידערינג די מינימום. אַזוי דאָ, וואַלועס דזש פּלוס איינער - אַז ס ווייניקער ווי וואָס מיר זענען דערווייַל קאָנסידערינג די מינימום. דעמאָלט מיר ניטאָ געגאנגען צו דערהייַנטיקן וואָס מיר טראַכטן איז די מינימום צו אינדעקס דזש פּלוס 1. אַזוי, טאָן אַז אַריבער די גאנצע מענגע, און נאָך דעם פֿאַר שלייף, מינימום זאָל זיין די מינימום עלעמענט פון די איך טה שטעלע אין דער מענגע. אַמאָל מיר האָבן אַז, מיר קענען ויסבייַטן די מינימום ווערט אין די איך טה פּאָסטן אין די מענגע. אַזוי דעם איז נאָר אַ נאָרמאַל ויסבייַטן. מיר קראָם אין אַ צייַטווייַליק ווערט - די איך טה ווערט אין די מענגע - שטעלן אין די איך טה ווערט אין די מענגע די מינימום ווערט אַז געהערט עס, און דעריבער קראָם צוריק אין ווו די קראַנט מינימום ווערט געניצט צו זיין די איך טה ווערט אין די מענגע, אַזוי אַז מיר האבן ניט פאַרלירן עס. אַזוי, אַז האלט אויף דער ווייַטער יטעראַטיאָן. מיר וועט אָנהייבן קוקן פֿאַר די צווייט מינימום ווערט און אַרייַנלייגן אַז אין די רגע שטעלע. אויף די דריט יטעראַטיאָן, מיר וועט קוקן פֿאַר די דריט מינימום ווערט און אַרייַנלייגן אַז אין די דריט שטעלע, און אַזוי אויף ביז מיר האָבן אַ אויסגעשטעלט מענגע. מיין נאָמען איז ראָב, און דעם איז סעלעקציע סאָרט.