TransWikia.com

Crear una lista con los elementos que no se repiten de un vector retorna resultado inesperado

Stack Overflow en español Asked by zilogz80 on January 20, 2021

Me encontré con este ejercicio:

Escriba una función genérica para cualquier tipo de elemento llamada
vector_a_lista(…) que reciba un std::vector y retorne una std::list que contenga los elementos del vector
de entrada, sin repetidos. Debe mantener el orden del vector. Escriba un programa cliente que genere
un vector con 40 enteros aleatorios, utilice la función para pasarlos a una lista, y muestre la lista en
pantalla.

Mi planteo fue este:

template<typename T>
list<T> vector_a_lista(std::vector<T>v) {
    list<T> l;
    for(int i = 0; i<v.size()-1; i++) {
        for(int j = i+1; j<v.size(); j++) {
            if(v[i] == v[j]) {
                break;
            } else {
                l.push_back(v[j]);
            }
        }
    }
    
    return l;
}

Pero no sé cómo retornar la lista. También probé el algoritmo de encontrar los repetidos en otro ejercicio y el resultado es totalmente distinto a lo esperado.

Podrían orientarme a encontrar el error en mi planteo?
Gracias.

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP