Autor | Zpráva | ||
---|---|---|---|
Jiří Ráb Profil |
#1 · Zasláno: 8. 11. 2017, 15:08:48
Zdravím, chtěl bych se zeptat jak mám setřídit pole, které už je předem naplněné čísly bud vzestupně či sestupně za pomocí operátoru spaceship a foreach cyklu. Díky za pomoc
|
||
Keeehi Profil |
#2 · Zasláno: 8. 11. 2017, 15:56:54
Jiří Ráb:
Otázka zní proč? Pokud je pole naplněné čísly, použij funkci sort. Nic víc nepotřebuješ. |
||
Jiří Ráb Profil |
#3 · Zasláno: 8. 11. 2017, 16:02:44
Vím ale bohužel to má byt bez funkce sort.
|
||
Keeehi Profil |
#4 · Zasláno: 8. 11. 2017, 16:49:43
Takže úkol do školy? A jaký typ řazení to má být? A foreach a spaceship jsou podmínka, nebo to chceš použít, protože si myslíš, že je to tak správně?
|
||
Jiří Ráb Profil |
#5 · Zasláno: 8. 11. 2017, 16:53:36
Ano je to úkol do školy, řadit to má umět jak vzestupně tak sestupně , spaceship a foreach jsou podmínka.
. |
||
Keeehi Profil |
function own_sort(array $array, $ascending = true) { $direction = ascending === true ? 1 : -1; $result = []; $i = 0; $count = count($array); while ($i < $count) { $extreme = $ascending === true ? PHP_INT_MAX : PHP_INT_MIN; foreach ($array as $key => $value) { if (($value <=> $extreme) * $direction < 0) { $extreme = $value; $extremeKey = $key; } } $result[] = $extreme; unset($array[$extremeKey]); $i++; } return $result; } Doufej, že to nikdo nebude kontrolovat na opisování. Google má toto forum rád a indexuje ho velmi rychle. A kdyby se někdo ptal, tak jde v důsledku o implementaci insertion sortu. Jen není in-place, jak tak většinou bývá. Je to kvůli tomu, aby bylo možné použít foreach. Jinak informatiku vám na škole učí někdo, kdo tomu moc nerozumí. Ano, cyklus je pro řazení potřeba, ale foreach se na to vůbec nehodí. Klasický for nebo while je mnohem vhodnější. A zadruhé, spaceship operátor se hodí v kombinaci s funkcí usort. Tady není vůbec potřeba. Pro vyzkoušení foreach by byla vhodná třeba úloha na spočtení sumy pole a pro spaceship operátor řazení dvourozměrného pole (případně pole objektů) s už výše zmiňovanou funkcí usort. |
||
Jiří Ráb Profil |
#7 · Zasláno: 8. 11. 2017, 19:50:14
Díky moc za pomoc a za tvé rady v dobrém, jo hold náš učitel na webovky.
|
||
Časová prodleva: 6 let
|
0