La fel ca în c #, este posibilă împărțirea unei matrice în mai multe matrice, în timp ce se stochează toate datele de suprapunere ale stivei

@STDray: (1) Nu este invariabilul evident? secvența elementelor pieselor coincide cu secvența inițială, chiar dacă este neschimbată. (2) în codul de producție, nu puteți schimba ușor semnătura metodei dacă, desigur, mai mult de o persoană lucrează la proiect. În plus, compilatorul nu schimbă listele mutabile - sursa lui wtf ("Mi sa dat o listă în rutina, ceea ce nu trebuie să-l schimbe „) și bug-uri (nu cred - ?. nu este întotdeauna cea mai bună strategie, iar apoi poate fi prea târziu) -. Vladd 22 aprilie la 15:16 '13







Dacă cineva decide să schimbe piesele, atunci nu există o astfel de invarianță pentru corespondența colecției originale. Nu contează dacă lista este mutată sau dacă este generată o nouă colecție. Desigur, va trebui să schimb semnăturile, altfel de ce avem nevoie de limbi tipizate. Dacă o persoană primește o listă, este liber să o schimbe. Bine. - STDray 22 aprilie '13 la 15:26

@VladD, dacă aveți criterii de necesitate, este mai bine să le specificați dintr-o dată. Și trebuie să fie specificate și motive inteligibile, deoarece am scris deja că este important să știm cu ce fel de colecție avem de-a face. Pe scurt, sunt ghidată de principiul: cerințele minime la intrare, maximul - la ieșire. - STDray 22 aprilie '13 la 12:15







@VladD, formează un leneș IEnumerabil> pentru o singură trecere este dificilă, deoarece apelurile Skip (K * N) .Caută (N) determină repetarea iterației colecției originale. O listă viguroasă> poate fi prea scump pentru a face cu memorie, în timp ce necesită aceeași trecere. Scenariul meu tipic este de a obține date de la o sursă externă și de a le manipula cu bucăți. Nu mă pot baza pe faptul că am destul memorie pentru tot. - STDray Apr 21 '13 la 11:32 pm

@STDray: cu toate acestea, vă bazați pe faptul că o singură bucată de memorie este suficientă. Nu sunt sigur că este posibilă o defalcare totală, cel puțin nu văd o cale evidentă. (Acest lucru este complicat de faptul că utilizatorul poate trece mai întâi prin ultima piesă.) - VladD 21 aprilie '13 la 23:37

@VladD, o singură bucată este suficientă, pentru că am ales dimensiunea ei. Voiam să subliniez structurile de date selectabile. Dacă le alegeți în mod corect, înțelegându-le dispozitivul, puteți evita orice complicații. De exemplu, știind că, în general, chiar Count () pentru IEnumerable - acesta este O (n), nimeni nu va dori să execute ultima piesă. - STDray 21 aprilie '13 la 11:45

@STDray: din moment ce TS nu vorbeste despre specificul sarcinilor sale, trebuie sa ghicim. - Pentru modelul tău, poate eu numărare<> este inutil: înțelesul său este doar în procesarea cu un element, nu cu n. leneș lectându-le, esti în esență folosind lectură bloc. - VladD 21 aprilie '13 la 11:51 pm







Articole similare

Trimiteți-le prietenilor: