C++ :: Aufgabe #336

1 Lösung Lösung öffentlich

Duplikate aus Liste/Array entfernen

Anfänger - C++ von JKooP - 20.02.2021 um 16:36 Uhr
Gegeben ist eine unsortierte Liste, welche alle gängigen Datentypen aufnehmen kann.
Dabei sind alle Werte des gleichen Typs. Statt der Liste können auch Arrays genutzt werden.

Beispiele:
List<int> {1, 4, 1, 3, 1, 4}
List<char> {‘a’, ‘b’, ‘a’, ‘a’, ‘c’}

Aus dieser Liste sollen jetzt alle Duplikate entfernt und die Liste anschließend sortiert werden.

Lösung:
List<int> {1, 3, 4}
List<char> {‘a’, ‘b’, ‘c’}

Schreibe eine Methode/Funktion, die eine Liste/Array aufnimmt, die Duplikate entfernt und diese dann sortiert wieder zurückgibt.

Viel Spaß

Lösungen:

vote_ok
von JKooP (18090 Punkte) - 02.05.2021 um 11:21 Uhr
C++ 17
Quellcode ausblenden C-Code
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;

template <typename T>
void uniques(vector<T> &v) {
    sort(v.begin(), v.end());
    v.erase(unique(v.begin(), v.end()), v.end());
}

int main()
{
    vector<char>v { 'a', 'b', 'a', 'a', 'c' };
    // vector<int>v{ 1, 4, 1, 3, 1, 4 };
    // vector<double>v{ 1.4, 4.8, 1.4, 3.0, 1.4, 4.8 };
    uniques(v);
    for(const auto& i : v)
        cout << i << ", ";
}
1817391

Du scheinst einen AdBlocker zu nutzen. Ich würde mich freuen, wenn du ihn auf dieser Seite deaktivierst und dich davon überzeugst, dass die Werbung hier nicht störend ist.