1 00:00:00,000 --> 00:00:00,860 2 00:00:00,860 --> 00:00:02,300 >> ZAMYLA CHAN: Nun ni rigardu varo. 3 00:00:02,300 --> 00:00:07,420 Ordigi prenas tabelo kaj la entjero n, kiu estas la grandeco de la tabelo. 4 00:00:07,420 --> 00:00:09,700 Nu, ekzistas diversaj malsamaj tipojn de varoj. 5 00:00:09,700 --> 00:00:13,030 Kaj vi povas rigardi en iu shorts cxar donu kaj klarigoj. 6 00:00:13,030 --> 00:00:16,239 La reveno tipo por nia speco funkcio estas malplena. 7 00:00:16,239 --> 00:00:20,230 Do tio signifas ke ni ne tuj reveni ajna tabelo de varo. 8 00:00:20,230 --> 00:00:24,810 Ni efektive tuj ŝanĝos la tre tabelo kiu pasis al ni. 9 00:00:24,810 --> 00:00:28,690 Kaj tio estas ebla ĉar arrays ili preteriris referenco en C. 10 00:00:28,690 --> 00:00:31,560 >> Nu, ni vidos pli pri tio poste, sed la esenca diferenco inter 11 00:00:31,560 --> 00:00:35,890 pasante en iu kiel entjero kaj pasante en tabelo estas ke kiam 12 00:00:35,890 --> 00:00:39,620 vi pasas en entjero, C estas simple irante fari kopion de tiu entjero 13 00:00:39,620 --> 00:00:41,120 kaj fordoni al la funkcio. 14 00:00:41,120 --> 00:00:45,190 La originala variablo ne estos ŝanĝitaj Tuj la funkcio estas finita. 15 00:00:45,190 --> 00:00:49,160 Kun tabelo, aliflanke, estas Ne tuj fari kopion kaj vi 16 00:00:49,160 --> 00:00:54,610 reale esti redaktado de la tre batalarangxis sin. 17 00:00:54,610 --> 00:00:57,930 >> Do unu tipo de varo estas la elekto varo. 18 00:00:57,930 --> 00:01:01,410 La selektado speco funkcias per startanta je la komenco kaj tiam vi ankaŭ persisti 19 00:01:01,410 --> 00:01:03,480 super kaj trovu la plej malgranda ero. 20 00:01:03,480 --> 00:01:07,380 Kaj tiam vi interŝanĝas, ke malgranda ero kun la unua. 21 00:01:07,380 --> 00:01:09,350 Kaj tiam vi movas al la dua elemento. 22 00:01:09,350 --> 00:01:14,170 Trovu la sekva pli malgranda elemento kaj poste interŝanĝu ke kun la dua elemento 23 00:01:14,170 --> 00:01:17,760 en la tabelo, ĉar la unua ero estas jam ordo. 24 00:01:17,760 --> 00:01:22,030 Kaj tiel do vi daŭrigas por ĉiu elemento en la identigi la plej malgranda 25 00:01:22,030 --> 00:01:24,106 valoro kaj interŝanĝi ĝin. 26 00:01:24,106 --> 00:01:29,320 Por mi egalas 0, la unua elemento, al n minus 1, vi tuj 27 00:01:29,320 --> 00:01:33,280 kompari ĉiun proksima valoro post tio kaj trovu la indekso 28 00:01:33,280 --> 00:01:34,480 de la minimuman valoron. 29 00:01:34,480 --> 00:01:39,190 Kiam vi trovos la minimuman valoron indekso, vi povas interŝanĝi ke valoro de tabelo 30 00:01:39,190 --> 00:01:42,610 minimumo kaj batalarangxis i. 31 00:01:42,610 --> 00:01:46,420 >> Alia tipo de varo kiun vi povas apliki estas bobelo varo. 32 00:01:46,420 --> 00:01:51,040 Do bobelo speco ripetas super la listo, komparante najbaraj elementoj kaj 33 00:01:51,040 --> 00:01:54,380 interŝanĝi la elementoj kiuj estas en la malĝusta ordo. 34 00:01:54,380 --> 00:01:59,040 Kaj tiamaniere la plej granda ero volo veziko ĝis la fino. 35 00:01:59,040 --> 00:02:04,730 Kaj la listo estas ordigita unufoje ne plu eroj estis ŝanĝitaj. 36 00:02:04,730 --> 00:02:08,590 >> Do tiuj estas du ekzemploj de la varo algoritmoj kiuj povas apliki por 37 00:02:08,590 --> 00:02:09,889 la trovaĵo programo. 38 00:02:09,889 --> 00:02:14,110 Kiam vi finos varo kaj vi havas farita serĉo, vi finis. 39 00:02:14,110 --> 00:02:16,380 Mia nomo estas Zamyla, kaj ĉi tiu estas CS50. 40 00:02:16,380 --> 00:02:23,616