Napisz program, który wskaże 5 element co do wilekości w tabeli.
Ostatnio zmodyfikowano 2018-11-03 21:56
kaktus123 Temat założony przez niniejszego użytkownika |
Napisz program, który wskaże 5 element co do wilekości w tabeli. » 2018-11-03 20:50:36 Witam, mam napisać program, który wskaże 5 co do wielkości element w tabeli. Użytkownik wpisuje liczby naturalne zakończone zerem , który stanowi tylko i wyłącznie znacznik końca danych. Można założyć że użytkownik podał przynajmniej 5 lioczb naturalnych i zakończył wpisywanie 0. Czyli dla np danych wejściowych: 3 5 4 1 2 0 pogram powinien zwrócić wartość 5. Nie chce sortować całej tabeli tylko potrzebny mi jest szybszy sposób tylko nie mam pomysłu za bardzo. |
|
pekfos |
» 2018-11-03 21:11:28 std::nth_element(). |
|
kaktus123 Temat założony przez niniejszego użytkownika |
» 2018-11-03 21:35:23 Ale mam napisać algorytm a nie korzystać z gotowych funkcji czy bibliotek. |
|
pekfos |
» 2018-11-03 21:56:13 To weź pierwsze 6 liczb i posortuj je malejąco. Każdą następną liczbę wstaw na ostatnią pozycję i posortuj ponownie. Drugie i dalsze sortowania można wykonać szybko korzystając z tego, że pierwsze 5 liczb jest już posortowane. Piąta liczba to wynik. Tak na prawdę operacja sortowania jako taka nie jest tu w ogóle potrzebna, po prostu łatwiej wytłumaczyć ten algorytm korzystając z tego konceptu. |
|
« 1 » |