witam, na pewno juz to bylo ale szyukam komponentu ala podobnego do listview , konkretnie chodzi mi by po nacisnieciu na np panel nazwa posortowalo alfabetycznie a jak na NR wedlog numeracji. szukam juz tego od kilku miesiecy i nie potrafie znalezc.
Chyba ze ten tez to potrafi no to sory
0
0
Proponuję przejrzeć forum i faq i samemu napisać procedurę sortującą. To wcale nie jest takie trudne.
PS: popraw orta w stopce.
0
Hmm... Nie jest trudne? Ja bym powiedział, że jest bardzo proste... Możesz sortować na kilka sposobów, oto kilka z nich: Przez wybieranie proste, bąbelkowo itp. Jak chcesz więcej metod, to można na google zajrzeć, ale chyba nie ma sensu... Krótko opiszę ich idee:
- Przez wybieranie proste:
Mamy tablicę wartości, wedłóg których chcemy posortować. Znajdujemy najmniejszy/największy element (zależnie od wybranej kolejności - dla malejącej największy, dla rosnącej najmniejszy) i zamieniamy go z elementem pierwszym (musimy oczywiście zamienić wszystkie wartości powiązane z tą kluczową). Następnie szukamy największego/najmniejszego elementu wśród wszystkich, poza pierwszym i zamieniamy go z 2 elementem (pierwszego już nie ruszamy) itd. - Bąbelkowy (przez zamianę prostą:
Sprawdzamy, który z elementów pierwszy czy drugi jest większy/mniejszy. Jeśli pierwszy, to zamieniamy je miejscami. Czynność powtarzamy dla 2 i 3 elementu i tak do n-1 i n-tego elementu. Po tej operacji na pewno ostatni element jest największy/najmniejszy (zależy w jakiej kolejności sortujemy). Następnie Powtarzamy w/w czynności dla wszystkich elementów, poza ostatnim. Itd. aż posortujemy wszystkie. Dla przyspieszenia działania można wprowadzić zmienną logiczną, która spowoduje, że jeśli w danym obrocie pętli nie wykonamy żadnej zamiany, to przestajemy sortować - oznacza to, że każdy element jest na swoim miejscu. A implementacja? Napisz sam, nie chce mi sięstukać, nie jest trudna... Może kiedyś napiszę bibliotekę do sortowania, ale to jak będę miał trochę więcej czasu, żeby sprawdzić, który sposób jest najszybszy w różnych przypadkach.
P.S. W przypadku sortowania alfabetycznego musisz wziąć pod uwagę, że nie możesz porównać tekstów na zasadzie if s1>s2 then ... Tylko musisz napisać funkcyjkę, która je porówna...
Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.