Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Program C++ untuk memasukkan, memadam dan mencari dalam set STL

Program C++ untuk memasukkan, memadam dan mencari dalam set STL

WBOY
WBOYke hadapan
2023-08-27 23:29:021400semak imbas

C++程序用于在set STL中插入、删除和查找

Katakan kita mempunyai struktur data pengumpulan data jenis integer. Pada input standard kami, kami menyediakan n pertanyaan. Dalam setiap pertanyaan (setiap baris) kita mempunyai dua elemen. Yang pertama ialah pengendali dan yang kedua ialah elemen. Operasi adalah seperti berikut -

  • masukkan. Ini akan memasukkan elemen ke dalam koleksi

  • alih keluar. Ini akan mengalih keluar elemen daripada koleksi jika ia wujud

  • search. Ini akan mencari koleksi untuk elemen dan memaparkan "Ya" jika ada, jika tidak "Tidak".

Jadi jika input adalah seperti n = 7, pertanyaan = [[1,5],[1,8],[1,3],[ 2 ,8],[1,9],[3,8],[3,3]], maka output akan menjadi [Tidak, Ya], kerana 8 tidak wujud dalam set, tetapi 3 wujud.

Untuk menyelesaikan masalah ini, kami akan mengikuti langkah berikut -

  • Tentukan set s
  • Tentukan set iterator " it" untuk melelaran s
  • q := nombor pertanyaan
  • Apabila q bukan sifar, kurangkan q selepas setiap lelaran dan lakukan operasi berikut:
      # 🎜 🎜#Dapatkan jenis pertanyaan qt
    • sebagai qt
      • Jika qt ialah 1, masukkan x s
        • Di luar blok#🎜🎜🎜 🎜#
        • Jika qt ialah 2, keluarkan x daripada s
      • keluar dari blok
        • #🎜 #Jika qt ialah 3,
        Panggil find(x) di dalamnya
      • Jika ia adalah elemen terakhir s, maka:
        • Cetak NO#🎜🎜 #
          • Jika tidak
          • CETAKAN YA
          • KELUAR🎜#KELUAR DARI BAWAH 🎜🎜#
        Contoh
      • #🎜🎜🎜🎜 Mari kita lihat pelaksanaan berikut pemahaman yang lebih baik -
      #include <iostream>
      #include <set>
      using namespace std;
      int main(){
          set<int> s;
          set<int>::iterator it;
          int q,x;
          int qt;
          cin >> q;
          while(q--){
              cin>>qt>>x;
              switch(qt){
                  case 1:s.insert(x);
                          break;
                  case 2:s.erase(x);
                          break;
                  case 3:it=s.find(x);
                          if(it==s.end())
                              cout<<"No"<<endl;
                          else
                              cout<<"Yes"<<endl;
                          break;
              }
          }
          return 0;
      }
      
    • input
    7
    1 5
    1 8
    1 3
    2 8
    1 9
    3 8
    3 3
  • output
No
Yes

Atas ialah kandungan terperinci Program C++ untuk memasukkan, memadam dan mencari dalam set STL. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam