logo

التجزئة في C ++

ان جمع غير منظم الذي يتكون من عناصر فريدة يسمى أ علامة التجزئة في C ++ . مجموعة العمليات القياسية، مثل الإزالة، موجودة في لغة c++. التقاطع والفرق المتماثل والاتحاد هي العمليات القياسية القائمة على المجموعة والتي تشكلها لغة c++. لتحديد العناصر والبحث عنها، تعتبر وظيفة التجزئة في hashset مفيدة جدًا في لغة c++. تلعب مجموعة التجزئة دورًا مهمًا في تحديد التكرارات في القائمة المكونة. من خلال وظيفة التجزئة هذه، يمكننا الحصول على القيم المميزة وحتى القيم المكررة أيضًا. ال قائمة غير مرتبة (مجموعة التجزئة) يستغرق بعض الوقت س (1) والذي هو ثابت في الطبيعة. وفي الحالة الأخرى، يمكن أن يكون الوقت المستغرق س وهو الوقت الخطي. في هذا السياق، سوف نتعلم كل شيء عن الهاشتاج في لغة c++.

كود جافا الزائف

بناء الجملة:

بناء جملة إدراج مجموعة التجزئة أو المجموعة غير المرتبة في c++، وهو نوع سلسلة، كما يلي:

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

بعض الأمثلة على تجزئة C++ مع آلية عملها:

ان unordered_set أو HashSet هي مجموعة يتم فيها تخزين المفتاح بأي ترتيب. بالنسبة إلى HashSet، هناك العديد من الوظائف المستخدمة. لكن الوظائف الأكثر استخدامًا مذكورة أدناه:

  1. يتم استخدام وظيفة الحجم للقدرة.
  2. تُستخدم الوظيفة الفارغة أيضًا للسعة.
  3. يتم استخدام البحث للبحث عن المفتاح.
  4. يتم استخدام وظيفة المسح للتعديل فيه.
  5. يتم استخدام وظيفة الإدراج أيضًا للتعديل.

ان unordered_set يسمح فقط بالمفاتيح الفريدة، و unordered_multiset يسمح فقط للمفاتيح المكررة من خلاله.

أمثلة:

مع أنواع مختلفة من الأمثلة، تم شرح آلية العمل الكاملة لـ C++ HashSet على النحو التالي:

1) مثال على مجموعة تجزئة c++ باستخدام {......} وهي قائمة تمت تهيئتها:

باستخدام HashSet في لغة C++، يتم تقديم المثال الأساسي الذي قمنا فيه بتهيئة المجموعة بمساعدة قائمة التهيئة {…..}.

للحلقة في جافا

شفرة:

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

انتاج:

 2015 2016 2017 

2) استخدام المسند الثنائي لتمرير كائن المقارنة:

باستخدام مجموعة المسند الثنائية، يتم تمرير كائنات المقارنة في المثال الموضح أدناه. يتم تعريف ترتيب المجموعة باستخدام نفس النوعين من العناصر.

شفرة:

 #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; } 

انتاج:

 250 120 80 

3) مثال على مجموعة التجزئة في C++ باستخدام الإدراج والتكرار والبحث والإعلان:

في المثال الوارد أدناه، يتم أخذ وقت ثابت في المتوسط ​​لعملية الإدراج والمسح والبحث. يتم إعطاء وظيفة البحث في المثال عندما لا يكون المفتاح موجودًا في المجموعة. يقوم بإرجاع مكرر إلى نهاية() . ومن ناحية أخرى، يعود التكرار بسهولة إلى موضع المفتاح عندما يكون المفتاح موجودًا في المجموعة. بالنسبة للقيم الرئيسية كمؤشر، يتم استخدام Iterator لاستلام المفتاح، ويمكن استرجاع المفتاح باستخدامه إلغاء الإشارة * المشغل .

شفرة:

كيفية التحويل إلى سلسلة
 #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) استخدام مجموعة غير مرتبة للبحث عن محتوى مكرر:

في المثال الموضح أدناه كمدخل، يتم توفير مجموعة الأعداد الصحيحة، وفي المجموعة، تم العثور على التكرارات وعرضها في الإخراج.

مثال الكود:

 #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;>

خاتمة:

في السياق أعلاه تعرفنا على HashSet في لغة C++ وآلية عمله. في هذه المقالة، تعلمنا أيضًا التطبيقات المختلفة التي تم تعيينها لـ C++ بمساعدة الأمثلة المختلفة التي تعمل فيها. في العثور على المحتوى المكرر والمحتوى المطلوب، يلعب C++ HashSet دورًا حيويًا فيه.