Kas ir rekursija?
- 2009. gada 23. jūlijā, plkst. 16:43
- 24 komentāri

Par programmēšanu.
Jautājums: Kas ir rekursija?
Atbilde: Skat. jautājumu.
Vai arī pavaicā visuvarenajai un visuzinošajai gūglei.

Par programmēšanu.
Jautājums: Kas ir rekursija?
Atbilde: Skat. jautājumu.
Vai arī pavaicā visuvarenajai un visuzinošajai gūglei.
Šie ir tie 24 komentāri (pievienot savu)
Rekursija (ja pareizi atceros no matemātikas),
var uzdot funkcijas, kuras griežas pašas pie sevis tieši vai arī netieši.
Tb ja marexz griežas pie laacz un laacz griežas pie marexz tad sanāk ka marexz netieši griežas pats pie sevis. Kaut kā tā bija, labojiet ja es kļūdos, matemātiku sen mācījos
Ļoti sasmējos par šo joku. :) Asprātīgi.
Tas ir veids, kā nokārt kompi.
Rekursiju mēdz izmantot, lai nodarbinātu blondīnes – iedodot papīra lapiņu, kur abās pusēs rakstīts: “skatīt otru pusi” :)
Rekursija, lietv. Sk. Rekursija.
http://googlesystem.blogspot.com/2009/07/google-he...
Man patika bashorgā lasīts citāts:
Сегодня работал с отцом, он мне говорит типа хочешь рекурсию покажу, я типа ну давай. Он берет втыкает в удлинитель дрель, и удлинитель включает в себя[удлинитель] же, жмет кнопку, дрель начинает работать….
Блин наверное у меня было очень смешное лицо, он ржал до вечера, а я еще долго втыкал почему же так получается, оказалось дрель была на аккумуляторе =(
Taa nav rekursija, tas ir stack overflow :D
tas ir cpu 100% :D
bezgaliigam ciklam jau nav nekaada sakara ar rekursiju. pareizaa versija bija:
- infinite loop, n.: loop, infinite
- loop, inifinite, n.: inifinite loop
rekursjai nav nekads sakars ar bezgaligu loopum tb negriezzas pats pie sevis ;)
To understand recursion, you must first understand recursion.
Rekursiju bieži jauc ar cikliem, visbiežāk rekursiju arī var pārrakstī kā ciklu, kas mēdz būt efektīvāk, bet ne tik kruta izskatās protams. Rekursija ir bezgalīga tikai līkām rokām.
Piemērs:
function samazinam_algu(darbinieks) {
darbinieks.alga = alga/2;
if (darbinieks.mirst_bada() == true)
{ return 0; }
else
{samazinam_algu(darbinieks);}
end if;
return 0;
}
+1 :D:D:D
CiemaAizdzins, Tev neliela kļūda funkcijas 2. rindā.. Šādā redakcijā nekāda rekursija vai nu nesanāk vai arī notiek bezgalīga ieciklošanās, ja mainīgais `alga` netiek mainīts.. Laikam pareizāk būtu šo rindiņu pārrakstīt šādi:
darbinieks.alga = darbinieks.alga/2;
;)
http://dl.ziza.ru/other/072009/24/demotiv/034.jpg
nice ((:
Bet nu jā – sanāk bezgalīgs loops.
Vissaprotamākais, manuprāt ir piemērs ar bezierobežojumu menu, kad, lai noskaidrotu menu elementa childus griežamies pie tās pašas funckijas un atkal visiem atrastajiem childiem meklējam to saistītos childus.
function menu($parent=”0″, $add){
$q=”SELECT id, name FROM menu WHERE parent_id = $parent”;
—blaah—
echo $add.$row['name'];
$add=$add.’–’;
menu($row['id'], $add);
}
http://de.fishki.net/picsw/072009/24/demotiv/034.j...
uhh… jāatcerās tāda kruta valoda, kā PROLOG, tur plaši bija jaizmanto rekursija, lai vispār ko uzprogramētu :-}
Nu bet var jau arī normālās valodās rekursiju izmantot, teiksim lai skaitļa faktoriālu n! aprēķinātu :-}
long fact(int n) { if(n == 1) return 1; else return n * fact(n-1);}
Googles fīča jau tas ir tikai prikols :)
Par to “did you mean..”
Šis teikums satur atsauci pats uz sevi.
Rekursija nozīmē, ka var uzdot funkcijas, kuras griežas pašas pie sevis tieši vai arī netieši. Ja funkcija A griežas pati pie sevis, tad saka, ka tā griežas tieši. Ja A griežas pie B un B pie A, tad saka, ka A griežas pie sevis netieši. Vispārīgā gadījumā ķēdīte var būt garāka….
Lūk kā :)
Lasīju veselu stundu, tā arī atbildi neatradu, kaut kāds murgs!
Kas tad ir tā rekursija? Jautājums vai?
Šī ir iterācija.