logo

HASHSET I C++

En oordnad samling som består av unika element kallas en hashset i c++ . Standardoperationssamlingen, som remove, innehåller finns i c++. Skärning, symmetrisk skillnad och union är den standarduppsättningsbaserade operationen som utgörs av c++. För identifiering och sökning av objekt är hashfunktionen i hashset mycket användbar i c++. Hashsetet tar en viktig roll i identifieringen av dubbletter i den bestående listan. Genom denna hash-funktion kan vi få de distinkta värdena och även de dubbla värdena. De unordered_ list (hashset) tar lite tid alltså o (1) som är konstant till sin natur. I det andra fallet kan det ta tid o som är linjär tid. I detta sammanhang skulle vi lära oss allt om hashset i c++.

kontrollstrukturer python

Syntax:

Syntaxen för infogning av hashset eller oordnad uppsättning i c++, som är en strängtyp, är följande:

 int main() { unordered_set CBA ; CBA.insert('') ; CBA.insert('') ; .................. } 

Några exempel på C++ hashset med deras arbetsmekanism:

En unordered_set eller HashSet är en uppsättning där nyckeln lagras i valfri ordning. För en HashSet finns det många funktioner som används. Men de mest använda funktionerna anges nedan:

  1. Storleksfunktionen används för kapacitet.
  2. Tom funktion används också för kapacitet.
  3. find används för att söka efter en nyckel.
  4. Raderingsfunktionen används för att modifiera den.
  5. Infogningsfunktionen används också för modifiering.

En unordered_set tillåter endast de unika nycklarna, och en unordered_multiset tillåter endast dubblettnycklarna genom den.

Exempel:

Med de olika typerna av exempel har hela arbetsmekanismen för C++ HashSet förklarats enligt följande:

1) c++ hashset exempel med {......} Det är en initierad lista:

Med hjälp av HashSet i C++ ges det grundläggande exemplet där vi har initierat uppsättningen med hjälp av initialiseringslistan {…..}.

Koda:

 #include #include int main() { std::unordered_set P { 2017, 2016, 2015 }; for (auto Q: P) std::cout << Q << '
'; return 0; } 

Produktion:

 2015 2016 2017 

2) Användning av binärt predikat för att skicka jämförelseobjekt:

java-formatsträng

Med hjälp av en binär predikatuppsättning skickas jämförelseobjekten i det givna exemplet nedan. Uppsättningsordningen definieras med två samma typer av element.

Koda:

 #include #include struct JAVATPOINT { template bool operator()(const X& n, const X& p) const { return n > p; } }; int main() { std::set values = { 120, 80, 250 }; for (auto S: values) std::cout << S << '
'; return 0; } 

Produktion:

 250 120 80 

3) Exempel på hashset i C++ med insert, iteration, find och declaration:

I exemplet nedan tas konstant tid i genomsnitt för insättning, radering och sökning. Sökfunktionen ges i exemplet när nyckeln inte finns i uppsättningen. Den returnerar Iterator till slutet() . Och å andra sidan kommer Iteratorn lätt tillbaka till nyckelpositionen när nyckeln är närvarande i setet. För nyckelvärdena som pekare används Iterator för att ta emot nyckeln, och nyckeln kan hämtas med dereferencing * operatör .

Koda:

gör medan java
 #include using namespace std; int main() { unordered_set CBA ; CBA.insert('Developer') ; CBA.insert('Programmer') ; CBA.insert('tester') ; CBA.insert('HR') ; CBA.insert('Coder') ; string key = 'JAVATPOINT' ; if (CBA.find(key) == CBA.end()) cout << key << ' one of the best company.' << endl << endl ; else cout << 'retrieved' << key << endl << endl ; key = 'Programmer'; if (CBA.find(key) == CBA.end()) cout << key << 'can not retrieve
' ; else cout << 'retrieved ' << key << endl ; cout << '
here is the designations : &apos; &lt;<endl; unordered_set :: iterator itr; for (itr="CBA.begin();" itr !="CBA.end();" itr++) cout << (*itr) endl; } < pre> <p> <strong>Output:</strong> </p> <pre> JAVATPOINT one of the best company. retrieved Programmer here is the designations : HR tester Programmer Coder Developer When the key data is not found in the order list: JAVATPOINT one of the best company Program can not retrieve here is the designations : HR tester Programmer Coder Developer </pre> <p> <strong>4) Using an unordered set searching for duplicate content:</strong> </p> <p>In the given below example as the input, the set of integers is provided, and in the set, the duplicates have been found and displayed in the output.</p> <p> <strong>Code example:</strong> </p> <pre> #include using namespace std; void printDuplicates(int deepak[], int M) { unordered_set JAVATPOINT; unordered_set similar; for (int P = 0; P <m; p++) { if (javatpoint.find(deepak[p])="=" javatpoint.end()) javatpoint.insert(deepak[p]); else similar.insert(deepak[p]); } cout << 'similar contents are : '; unordered_set :: iterator start; for (start="similar.begin();" start !="similar.end();" start++) *start ' int main() deepak[]="{9," 3, 6, 1, 2, 4, 9, 5, 7, 0, 8}; m="sizeof(Deepak)" sizeof(int); printduplicates(deepak, m); return 0; < pre> <p> <strong>Output:</strong> </p> <pre> similar contents are : 9 6 </pre> <h2>Conclusion:</h2> <p>In the above context, we have learned about HashSet in C++ and its working mechanism of it. In this article, we have also learned the various applications of C++ has set with the help of different examples in which they are working. In finding duplicate content and desired content C++ HashSet plays a vital role in it.</p> <hr></m;></pre></endl;>

4) Använda en oordnad uppsättning för att söka efter duplicerat innehåll:

I exemplet nedan som indata tillhandahålls uppsättningen av heltal, och i uppsättningen har dubletterna hittats och visats i utdata.

Kodexempel:

 #include using namespace std; void printDuplicates(int deepak[], int M) { unordered_set JAVATPOINT; unordered_set similar; for (int P = 0; P <m; p++) { if (javatpoint.find(deepak[p])="=" javatpoint.end()) javatpoint.insert(deepak[p]); else similar.insert(deepak[p]); } cout << \'similar contents are : \'; unordered_set :: iterator start; for (start="similar.begin();" start !="similar.end();" start++) *start \' int main() deepak[]="{9," 3, 6, 1, 2, 4, 9, 5, 7, 0, 8}; m="sizeof(Deepak)" sizeof(int); printduplicates(deepak, m); return 0; < pre> <p> <strong>Output:</strong> </p> <pre> similar contents are : 9 6 </pre> <h2>Conclusion:</h2> <p>In the above context, we have learned about HashSet in C++ and its working mechanism of it. In this article, we have also learned the various applications of C++ has set with the help of different examples in which they are working. In finding duplicate content and desired content C++ HashSet plays a vital role in it.</p> <hr></m;>

Slutsats:

I ovanstående sammanhang har vi lärt oss om HashSet i C++ och dess arbetsmekanism. I den här artikeln har vi också lärt oss de olika applikationerna av C++ har satts med hjälp av olika exempel där de arbetar. För att hitta duplicerat innehåll och önskat innehåll spelar C++ HashSet en viktig roll i det.