Rešitev: Funkcije na podatkovni strukturi: Vrsta
Iz MaFiRaWiki
Naloga: Funkcije na podatkovni strukturi: Vrsta
Prosta implementacija vrste z osnovnimi operacijami:
Clear[Pripravi,Vstavi,JePrazna,Odstrani,Zacetek,Najmlajsi,OdstraniN]; JePrazna[Pripravi[]] := True; JePrazna[Vstavi[v_,e_]] := False; Odstrani[Pripravi[]] := Pripravi[]; Odstrani[Vstavi[v_,e_]] := If[JePrazna[v], Pripravi[], Vstavi[Odstrani[v],e]]; Zacetek[Pripravi[]] := Null; Zacetek[Vstavi[v_,e_]] := If[JePrazna[v], e, Zacetek[v]];
Definiciji zahtevanih funkcij z osnovnimi:
Najmlajsi[Pripravi[]] := Null; Najmlajsi[Vstavi[v_, e_]] := e; OdstraniN[Pripravi[]] := Pripravi[]; OdstraniN[Vstavi[v_, e_]] := v
Preizkusimo na primeru:
Clear[v]; v = Vstavi[Vstavi[Vstavi[Pripravi[], "1"], "2"], "3"]; In[14]:= Najmlajsi[v] Out[14]:= 3 In[15]:= OdstraniN[v] Out[15]:= Vstavi[Vstavi[Pripravi[], 1], 2]
[spremeni]