• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Usuwanie powtarzających się elementów z posortowanej tablicy.

Object Storage Arubacloud
+1 głos
401 wizyt
pytanie zadane 11 lutego 2022 w C i C++ przez danielch Użytkownik (660 p.)

Hej.

Mam sobie tablicę np.

tab2[4] = {1,1,2,3};

Powyższa tablica jest posortowana rosnąco. Zależy mi na tym, aby usunąć te elementy, które się powtarzają. Przykładowo po takiej operacji zostałoby w tablicy {1,2,3}. Czy ktoś wie, jak to ogarnąć? Z góry dzięki za pomoc!

2 odpowiedzi

0 głosów
odpowiedź 11 lutego 2022 przez Whiskey_Taster Pasjonat (15,610 p.)
Zależy co Cię interesuje. Możesz dodać elementy do odpowiednika zbioru, wtedy na pewno będą one unikalne - w końcu to zbiór.
Innym podejściem może być przejście poprzez elementy tablicy i wrzucanie elementów do nowej tablicy. W tym wypadku wystarczy sprawdzić, czy bieżący element jest różny od ostatniego elementu nowej tablicy. Wynika to z faktu, że Twoja tablica początkowa jest posortowana, inaczej te podejście nie byłoby najlepsze. Tylko oczywiście musiałbyś użyć tablicy dynamicznej, w końcu nie wiadomo, ile elementów będzie miała tablica końcowa. To można ominąć i bezpośrednio użyć std::vector, do czego zachęcam.
0 głosów
odpowiedź 11 lutego 2022 przez j23 Mędrzec (194,920 p.)
    int tab[5] = { 1, 1, 2, 3, 3 };
    int n = 5;
    int i = 0, j = 0;

    while(j < n) {
        tab[i] = tab[j++];
        while(j < n && tab[i] == tab[j]) ++j;
        ++i;
    }

    for(int k = 0; k < i; ++k) 
        std::cout << tab[k] << '\n';

 

Podobne pytania

0 głosów
4 odpowiedzi 3,184 wizyt
0 głosów
2 odpowiedzi 394 wizyt
pytanie zadane 12 listopada 2022 w JavaScript przez xTMx3 Obywatel (1,560 p.)
+1 głos
1 odpowiedź 167 wizyt
pytanie zadane 30 kwietnia 2018 w JavaScript przez GracjanDogg Użytkownik (840 p.)

92,687 zapytań

141,599 odpowiedzi

320,089 komentarzy

62,048 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...