1 00:00:00,000 --> 00:00:03,110 >> SPEAKER 1: Ez utóbbi változat Sigma, azt végre, amit én neveznék 2 00:00:03,110 --> 00:00:06,570 iteratív megoldás, amelynek használtam előre hurok számolni az összes 3 00:00:06,570 --> 00:00:09,720 számok 1 és m, azután vissza az összeget. 4 00:00:09,720 --> 00:00:12,560 >> De kiderül, tudjuk használni egy másik technika, végrehajtani, hogy ugyanazt a 5 00:00:12,560 --> 00:00:15,120 funkció, a technika néven rekurzió. 6 00:00:15,120 --> 00:00:19,360 A rekurzív függvény, hogy úgy mondjam, csak az egyik, amely magát. 7 00:00:19,360 --> 00:00:21,290 Most, és az is, hogy a lehet a probléma. 8 00:00:21,290 --> 00:00:24,500 Ha egy függvény egyszerűen nevezi magát, amely nevezi magát, amely saját magát hívja meg, 9 00:00:24,500 --> 00:00:26,080 ez a folyamat talán bot soha vége. 10 00:00:26,080 --> 00:00:30,490 De mindaddig, amíg azt értjük, egy úgynevezett alapeset, olyan állapot, amely biztosítja 11 00:00:30,490 --> 00:00:34,930 hogy bizonyos helyzetekben nem hívja magunkat, hogy az eljárás egyébként 12 00:00:34,930 --> 00:00:37,070 végtelen hurok kell szüntetni. 13 00:00:37,070 --> 00:00:39,180 >> Nézzük most újraimplementálni szigma a következők szerint. 14 00:00:39,180 --> 00:00:43,810 Ha n kisebb vagy egyenlő 0, én egyszerűen, és kissé önkényesen, 15 00:00:43,810 --> 00:00:45,670 majd vissza 0-ra. 16 00:00:45,670 --> 00:00:49,370 Különben mit fogok csinálni valójában számítani szigma a pozitív int 17 00:00:49,370 --> 00:00:50,460 hogy én már átadták. 18 00:00:50,460 --> 00:00:52,050 >> Nos, mi szigma m? 19 00:00:52,050 --> 00:00:55,480 Nos, a szigma m értéke, természetesen, összege 1-ig a m. 20 00:00:55,480 --> 00:00:58,820 De ha belegondolunk, hogy a másik irányba, ez csak az összege m és m 21 00:00:58,820 --> 00:01:02,560 mínusz 1 m plusz mínusz 2 és így tovább, egészen 1-re. 22 00:01:02,560 --> 00:01:08,080 Tehát ebben az értelemben, úgy tűnik, hogy Én egyszerűen visszatérni m plusz. 23 00:01:08,080 --> 00:01:10,210 >> Aztán kell m mínusz 1 m plusz mínusz 2. 24 00:01:10,210 --> 00:01:13,470 De van olyan funkció, amely adhat nekem pontosan ez a válasz, vagyis 25 00:01:13,470 --> 00:01:16,340 sigma m mínusz 1. 26 00:01:16,340 --> 00:01:19,670 >> Most, amelyben magam ezen a módon nem úgy tűnik, mintha a legjobb ötlet. 27 00:01:19,670 --> 00:01:22,610 Mert ha sigma hívások szigma amely felhívja sigma amely felhívja sigma, akkor 28 00:01:22,610 --> 00:01:24,480 azt gondolom, hogy ezt a folyamatot Lehet, hogy soha nem ér véget. 29 00:01:24,480 --> 00:01:27,720 De ez miért kellett az úgynevezett alap esetben a tetején ezt a funkciót. 30 00:01:27,720 --> 00:01:31,540 Az, ha a feltétel, hogy ellenőrzi, hogy m kisebb vagy egyenlő 0 Nem megyek 31 00:01:31,540 --> 00:01:32,610 hívni magam. 32 00:01:32,610 --> 00:01:37,010 Én inkább megyek vissza 0, ami viszont fog hozzá kell adni a 33 00:01:37,010 --> 00:01:39,950 Előző számok, hogy én már összegzése fel, ezáltal megállítva ez 34 00:01:39,950 --> 00:01:41,740 egyébként végtelen folyamat. 35 00:01:41,740 --> 00:01:43,710 >> Lássuk, ha ez az új kivitelezési munkák. 36 00:01:43,710 --> 00:01:46,510 Mentsük, fordítási és a program futtatásához. 37 00:01:46,510 --> 00:01:50,640 Legyen sigma 1 pont perjel sigma 1. 38 00:01:50,640 --> 00:01:52,900 És nézzük, ez biztosítja a ugyanazokat a számokat, mint korábban. 39 00:01:52,900 --> 00:01:55,520 2, ami remélhetőleg adjon nekem 3. 40 00:01:55,520 --> 00:01:58,970 Nézzük biztosítja számára 3, amely remélhetőleg adj 6. 41 00:01:58,970 --> 00:02:03,480 És nézzük végül bocsátania 50, ami valóban ad nekem 1275. 42 00:02:03,480 --> 00:02:06,130