ich diesen Ausschnitt aus einer Kodierung Video von Google herePrüfen für ein Paar von Elementen in einer Anordnung, deren Summe gleich gegebene Summe
bool HasPairWithSum(const vector<int> data, int sum){
unordered_set<int> comp; //complements
for(int value : data){
if(comp.find(value) != comp.end)
return true;
comp.add(sum - value);
}
return false;
}
Um zu überprüfen, ob das Paar von Elementen besteht in einer Reihe, deren Summe gefunden ist an gegebener Summe gleich
folgende Testfälle in dem Video wie erläuterte WORKS,
- {1, 2, 3, 9} gegeben Sum = 8
- {1, 2, 4, 4} Da Summe = 8
1.But, ich bin immer noch, welche der folgenden korrekt
if(comp.find(value) != comp.end) // as in snippet or
if(comp.find(value) == comp.end) // this one
2.Also, wie würde dieser Algorithmus verwirrt passen,
- {1, 2, 4, 6} Gegeben Sum = 8