Computer >> Máy Tính >  >> Lập trình >> C ++

C ++ thiết lập cho kiểu dữ liệu do người dùng xác định?

Tập hợp là một cấu trúc dữ liệu lưu trữ các giá trị số. Đặc biệt của tập hợp là các phần tử là khác biệt (tức là không có hai phần tử nào có cùng giá trị). Ngoài ra, các giá trị được lưu trữ theo thứ tự tăng dần. Bạn có thể xác định rõ ràng kiểu dữ liệu của một tập hợp trong C ++, tức là kiểu dữ liệu do người dùng xác định cho một tập hợp.

Để lưu trữ dữ liệu ở dạng riêng biệt và theo thứ tự được sắp xếp. Hãy lấy một ví dụ,

Input  : 124689781230
Output : 1230467889

Logic

Trong một tập hợp, đầu vào có thể theo bất kỳ thứ tự nào và có thể có giá trị trùng lặp. Nhưng tập hợp sẽ chỉ lưu trữ các giá trị riêng biệt và theo thứ tự tăng dần.

Ví dụ

#include<bits/stdc++.h>
using namespace std;
struct Test {
   int id;
   bool operator < (const Test& t) const {
      return (this->id < t.id);
   }
};
int main() {
   Test t1 = { 12 }, t2 = { 45 }, t3 = { 32 }, t4 = { 78 }, t5 = {12}, t6 = {8};
   set<struct Test> s;
   s.insert(t1);
   s.insert(t2);
   s.insert(t3);
   s.insert(t4);
   s.insert(t5);
   s.insert(t6);
   set<struct Test>::iterator it;
   for (it = s.begin(); it != s.end(); it++) {
      cout << (*it).id <<" ";
   }
   return 0;
}

Đầu ra

8 12 32 45 78