Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

การแทรกและการลบในชุด STL C++


การแทรก

การแทรกในชุด STL สามารถทำได้โดยการดำเนินการ insert() และ emplace()

แทรก() :Insert() ใช้เพื่อแทรกองค์ประกอบลงในชุด การดำเนินการแทรกจะใช้การอ้างอิงถึงวัตถุ

รายการฟังก์ชันที่ใช้:

  • st.size() =ส่งกลับขนาดของชุด
  • st.insert() =ใช้เพื่อแทรกองค์ประกอบในชุด

โค้ดตัวอย่าง

#include <iostream>
#include <set>
#include <string>
#include <cstdlib>
using namespace std;
int main() {
   set<int> st;
   set<int>::iterator it;
   int c, i;
   while (1) {
      cout<<"1.Size of the Set"<<endl;
      cout<<"2.Insert Element into the Set"<<endl;
      cout<<"3.Display the set: "<<endl;
      cout<<"4.Exit"<<endl;
      cout<<"Enter your Choice: ";
      cin>>c;
      switch(c) {
         case 1:
            cout<<"Size of the Set: ";
            cout<<st.size()<<endl;
         break;
         case 2:
            cout<<"Enter value to be inserted: ";
            cin>>i;
            st.insert(i);
         break;
         case 3:
            cout<<"Displaying Set by Iterator: ";
            for (it = st.begin(); it != st.end(); it++) {
               cout << (*it)<<" ";
            }
            cout<<endl;
         break;
         case 4:
            exit(1);
         break;
         default:
            cout<<"Wrong Choice"<<endl;
      }
   }
   return 0;
}

ผลลัพธ์

1.Size of the Set
2.Insert Element into the Set
3.Display the set:
4.Exit

Enter your Choice: 1
Size of the Set: 0
1.Size of the Set
2.Insert Element into the Set
3.Display the set:
4.Exit

Enter your Choice: 2
Enter value to be inserted: 4
1.Size of the Set
2.Insert Element into the Set
3.Display the set:
4.Exit

Enter your Choice: 2
Enter value to be inserted: 6
1.Size of the Set
2.Insert Element into the Set
3.Display the set:
4.Exit

Enter your Choice: 2
Enter value to be inserted: 8
1.Size of the Set
2.Insert Element into the Set
3.Display the set:
4.Exit

Enter your Choice: 2
Enter value to be inserted: 10
1.Size of the Set
2.Insert Element into the Set
3.Display the set:
4.Exit

Enter your Choice: 3
Displaying Set by Iterator: 4 6 8 10
1.Size of the Set
2.Insert Element into the Set
3.Display the set:
4.Exit
Enter your Choice: 4

Exit code: 1

Emplace()

การดำเนินการ Emplace ยังใช้เพื่อแทรกองค์ประกอบไปยังชุดแบบแทนที่ โดยจะหลีกเลี่ยงการคัดลอกวัตถุที่ไม่จำเป็นและทำการแทรกได้อย่างมีประสิทธิภาพมากกว่าการดำเนินการแทรก

รายการฟังก์ชันที่ใช้:

  • st.size() =ส่งกลับขนาดของชุด
  • st.emplace() =ใช้เพื่อแทรกองค์ประกอบลงในชุด

โค้ดตัวอย่าง

#include <iostream>
#include <set>
#include <string>
#include <cstdlib>
using namespace std;
int main() {
   set<int> st;
   set<int>::iterator it;
   int c, i;
   while (1) {
      cout<<"1.Size of the Set"<<endl;
      cout<<"2.Insert Element into the Set"<<endl;
      cout<<"3.Display the set: "<<endl;
      cout<<"4.Exit"<<endl;
      cout<<"Enter your Choice: ";
      cin>>c;
      switch(c) {
         case 1:
            cout<<"Size of the Set: ";
            cout<<st.size()<<endl;
         break;
         case 2:
            cout<<"Enter value to be inserted: ";
            cin>>i;
            st.emplace(i);
         break;
         case 3:
            cout<<"Displaying Set by Iterator: ";
            for (it = st.begin(); it != st.end(); it++) {
               cout << (*it)<<" ";
            }
            cout<<endl;
         break;
         case 4:
            exit(1);
         break;
         default:
            cout<<"Wrong Choice"<<endl;
      }
   }
return 0;
}

ผลลัพธ์

1.Size of the Set
2.Insert Element into the Set
3.Display the set:
4.Exit
Enter your Choice: 1
Size of the Set: 0
1.Size of the Set
2.Insert Element into the Set
3.Display the set:
4.Exit
Enter your Choice: 2
Enter value to be inserted: 4
1.Size of the Set
2.Insert Element into the Set
3.Display the set:
4.Exit
Enter your Choice: 6
Wrong Choice
1.Size of the Set
2.Insert Element into the Set
3.Display the set:
4.Exit
Enter your Choice: 2
Enter value to be inserted: 6
1.Size of the Set
2.Insert Element into the Set
3.Display the set:
4.Exit
Enter your Choice: 2
Enter value to be inserted: 7
1.Size of the Set
2.Insert Element into the Set
3.Display the set:
4.Exit
Enter your Choice: 2
Enter value to be inserted: 8
1.Size of the Set
2.Insert Element into the Set
3.Display the set:
4.Exit
Enter your Choice: 3
Displaying Set by Iterator: 4 6 7 8
1.Size of the Set
2.Insert Element into the Set
3.Display the set:
4.Exit
Enter your Choice: 4

Exit code: 1

การลบ

เมื่อใช้ฟังก์ชัน Erase() เราสามารถลบองค์ประกอบออกจากชุดโดยกล่าวถึงอาร์กิวเมนต์ ไม่ว่าจะเป็นตำแหน่ง ค่า หรือช่วงของตัวเลข

รายการฟังก์ชันที่ใช้ที่นี่:

  • st.size() =ส่งกลับขนาดของชุด
  • st.insert() =ใช้เพื่อแทรกองค์ประกอบในชุด
  • st.erase() =เพื่อลบองค์ประกอบออกจากชุด

โค้ดตัวอย่าง

#include <iostream>
#include <set>
#include <string>
#include <cstdlib>
using namespace std;
int main() {
   set<int> st;
   set<int>::iterator it;
   int c, i;
   while (1) {
      cout<<"1.Size of the Set"<<endl;
      cout<<"2.Insert Element into the Set"<<endl;
      cout<<"3.Delete Element from the Set"<<endl;
      cout<<"4.Display the set: "<<endl;
      cout<<"5.Exit"<<endl;
      cout<<"Enter your Choice: ";
      cin>>c;
      switch(c) {
         case 1:
            cout<<"Size of the Set: ";
            cout<<st.size()<<endl;
         break;
         case 2:
            cout<<"Enter value to be inserted: ";
            cin>>i;
            st.insert(i);
         break;
         case 3:
            cout<<"Enter the element to be deleted: ";
            cin>>i;
            st.erase(i);
         break;
         case 4:
            cout<<"Displaying Set by Iterator: ";
            for (it = st.begin(); it != st.end(); it++) {
               cout << (*it)<<" ";
            }
            cout<<endl;
         break;
         case 5:
            exit(1);
         break;
         default:
            cout<<"Wrong Choice"<<endl;
      }
}
return 0;
}

ผลลัพธ์

1.Size of the Set
2.Insert Element into the Set
3.Delete Element from the Set
4.Display the set:
5.Exit

Enter your Choice: 1
Size of the Set: 0
1.Size of the Set
2.Insert Element into the Set
3.Delete Element from the Set
4.Display the set:
5.Exit

Enter your Choice: 2
Enter value to be inserted: 1
1.Size of the Set
2.Insert Element into the Set
3.Delete Element from the Set
4.Display the set:
5.Exit

Enter your Choice: 2
Enter value to be inserted: 2
1.Size of the Set
2.Insert Element into the Set
3.Delete Element from the Set
4.Display the set:
5.Exit

Enter your Choice: 2
Enter value to be inserted: 3
1.Size of the Set
2.Insert Element into the Set
3.Delete Element from the Set
4.Display the set:
5.Exit

Enter your Choice: 2
Enter value to be inserted: 4
1.Size of the Set
2.Insert Element into the Set
3.Delete Element from the Set
4.Display the set:
5.Exit

Enter your Choice: 4
Displaying Set by Iterator: 1 2 3 4
1.Size of the Set
2.Insert Element into the Set
3.Delete Element from the Set
4.Display the set:
5.Exit

Enter your Choice: 3
Enter the element to be deleted: 2
1.Size of the Set
2.Insert Element into the Set
3.Delete Element from the Set
4.Display the set:
5.Exit

Enter your Choice: 4
Displaying Set by Iterator: 1 3 4
1.Size of the Set
2.Insert Element into the Set
3.Delete Element from the Set
4.Display the set:
5.Exit
Enter your Choice: 5

Exit code: 1