Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Suchen und Vergleichen von Listen

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
02.01.2007, 14:53 Uhr
comovai



halihallo erstmal

Kann mir jemand vielleicht paar tipps oder lösungen geben, wie man in C++ mit zwei einzelenen Funktionen jeweils Listen sucht und vergleicht?

Danke schonmal im Vorraus!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
02.01.2007, 20:36 Uhr
J-jayz-Z
Perl Crack ala Carte
(Operator)


Ich war mir nicht sicher, was du suchst, aber evtl. hilft dir ja das weiter. Hier habe ich 2 std::list<std::string> und generiert wird eine, die nur die Einträge enthällt, die in beiden Listen doppelt sind. Ist eigentlich simpel ...

C++:
#include <list>
#include <iostream>

template<typename T>
void getUnique(T first, T second, T& third)
{
    for(std::list<std::string>::iterator one = first.begin(); one != first.end(); one++)
    {
        for(std::list<std::string>::iterator two = second.begin(); two != second.end(); two++)
        {
            if((*one).compare((*two)) == 0)
            {
                third.push_back((*two));
            }
        }
    }
}

int main(int argc, char* argv[])
{
    std::list<std::string> first;
    std::list<std::string> second;
    std::list<std::string> third;

    first.push_back("bla");
    first.push_back("blub");

    second.push_back("foo");
    second.push_back("bla");

    getUnique<std::list<std::string>>(first, second, third);
    
    for(std::list<std::string>::iterator three = third.begin(); three != third.end(); three++)
    {
        std::cout << (*three).c_str() << std::endl;
    }

    std::cin.get();
    return EXIT_SUCCESS;
}


EDIT: In Funktion gepackt
--
perl -Mstrict -Mwarnings -e 'package blub; sub new { bless {} } sub bar {my $self=shift; $self->{bla}="66756e2d736f66742e6465"; return $self->{bla};} my $foo=blub->new();print "Hallo ";print pack("H*",$foo->bar()); print "\n"'

Dieser Post wurde am 02.01.2007 um 20:42 Uhr von J-jayz-Z editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
03.01.2007, 11:24 Uhr
xXx
Devil


Naja ... @Jayz ... warum nimmst de nicht T::iterator ...
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
03.01.2007, 13:25 Uhr
J-jayz-Z
Perl Crack ala Carte
(Operator)


Bah, mist ... Langer Arbeitstag
--
perl -Mstrict -Mwarnings -e 'package blub; sub new { bless {} } sub bar {my $self=shift; $self->{bla}="66756e2d736f66742e6465"; return $self->{bla};} my $foo=blub->new();print "Hallo ";print pack("H*",$foo->bar()); print "\n"'
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: