רשימת קדימה ב- C ++ | הגדר 2 (פונקציות מניפולציות)

רשימת קדימה ב- C ++ | סט 1 (מבוא ופונקציות חשובות) פונקציות נוספות נדונות במאמר זה חלק מהפעולות שאינן הכנסות ומחיקות שניתן להשתמש בהן ברשימות קדימה הן כדלקמן: 

1. לְמַזֵג() :- פונקציה זו משמשת למיזוג רשימה אחת קדימה עם אחרים. אם שתי הרשימות ממוינות, גם הרשימה המתקבלת שהוחזרה ממוינת. 

2. מפעיל '=' :- מפעיל זה מעתיק רשימה קדימה אחת לאחר. העותק שנעשה במקרה זה הוא עותק עמוק. 

CPP
   // C++ code to demonstrate the working of    // merge() and operator=    #include          #include         using     namespace     std  ;      int     main  ()      {         // Initializing 1st forward list       forward_list   <  int  >     flist1     =     {  1       2       3  };             // Declaring 2nd forward list       forward_list   <  int  >     flist2  ;             // Creating deep copy using '='       flist2     =     flist1  ;             // Displaying flist2       cout      < <     'The contents of 2nd forward list'      ' after copy are : '  ;         for     (  int     &  x     :     flist2  )         cout      < <     x      < <     ' '  ;         cout      < <     endl  ;             // Using merge() to merge both list in 1       flist1  .  merge  (  flist2  );             // Displaying merged forward list       // Prints sorted list       cout      < <     'The contents of forward list '      'after merge are : '  ;         for     (  int     &  x     :     flist1  )         cout      < <     x      < <     ' '  ;         cout      < <     endl  ;             return     0  ;      }      

תְפוּקָה:

The contents of 2nd forward list after copy are : 1 2 3 The contents of forward list after merge are : 1 1 2 2 3 3  

מורכבות זמן: O (1)

שטח עזר: O (1)
  3. סוּג() :- פונקציה זו משמשת למיון רשימת קדימה. 

4. ייחודי () :- פונקציה זו מוחקת את התרחשויות המרובות של מספר ומחזירה רשימה קדימה עם אלמנטים ייחודיים. יש למיין את רשימת הקדימה לפונקציה זו שתבצע בהצלחה. 

CPP
   // C++ code to demonstrate the working of    // sort() and unique()    #include          #include      // for sort() and unique()    using     namespace     std  ;      int     main  ()      {         // Initializing 1st forward list       forward_list   <  int  >     flist1     =     {  1       2       3       2       3       3       1  };         // Sorting the forward list using sort()       flist1  .  sort  ();         // Displaying sorted forward list       cout      < <     'The contents of forward list after '      'sorting are : '  ;         for     (  int     &  x     :     flist1  )         cout      < <     x      < <     ' '  ;         cout      < <     endl  ;         // Use of unique() to remove repeated occurrences       flist1  .  unique  ();         // Displaying forward list after using unique()       cout      < <     'The contents of forward list after '      'unique operation are : '  ;         for     (  int     &  x     :     flist1  )         cout      < <     x      < <     ' '  ;         cout      < <     endl  ;         return     0  ;      }      

תְפוּקָה:

The contents of forward list after sorting are : 1 1 2 2 3 3 3 The contents of forward list after unique operation are : 1 2 3  

מורכבות זמן: O (1)

שטח עזר: O (1)
 

5. לַהֲפוֹך() :- פונקציה זו משמשת כדי להפוך את רשימת קדימה.

6. לְהַחלִיף() :- פונקציה זו מחליפה את התוכן של רשימה קדימה אחת עם אחרים. 

CPP
   // C++ code to demonstrate the working of    // reverse() and swap()    #include          #include      // for reverse() and swap()    using     namespace     std  ;      int     main  ()      {         // Initializing 1st forward list       forward_list   <  int  >     flist1     =     {  1       2       3  };         // Initializing 2nd forward list       forward_list   <  int  >     flist2     =     {  4       5       6  };         // Using reverse() to reverse 1st forward list       flist1  .  reverse  ();         // Displaying reversed forward list       cout      < <     'The contents of forward list after'      ' reversing are : '  ;         for     (  int     &  x     :     flist1  )         cout      < <     x      < <     ' '  ;         cout      < <     endl      < <     endl  ;         // Displaying forward list before swapping       cout      < <     'The contents of 1st forward list '      'before swapping are : '  ;         for     (  int     &  x     :     flist1  )         cout      < <     x      < <     ' '  ;         cout      < <     endl  ;         cout      < <     'The contents of 2nd forward list '      'before swapping are : '  ;         for     (  int     &  x     :     flist2  )         cout      < <     x      < <     ' '  ;         cout      < <     endl  ;         // Use of swap() to swap the list       flist1  .  swap  (  flist2  );         // Displaying forward list after swapping       cout      < <     'The contents of 1st forward list '      'after swapping are : '  ;         for     (  int     &  x     :     flist1  )         cout      < <     x      < <     ' '  ;         cout      < <     endl  ;         cout      < <     'The contents of 2nd forward list '      'after swapping are : '  ;         for     (  int     &  x     :     flist2  )         cout      < <     x      < <     ' '  ;         cout      < <     endl  ;         return     0  ;      }      

תְפוּקָה:

The contents of forward list after reversing are : 3 2 1 The contents of 1st forward list before swapping are : 3 2 1 The contents of 2nd forward list before swapping are : 4 5 6 The contents of 1st forward list after swapping are : 4 5 6 The contents of 2nd forward list after swapping are : 3 2 1  

מורכבות זמן: O (1)

שטח עזר: O (1)
 

7. בָּרוּר() :- פונקציה זו מנקה את תוכן הרשימה קדימה. לאחר פונקציה זו רשימת קדימה הופכת ריקה.

  8. רֵיק() :- פונקציה זו מחזירה נכון אם הרשימה ריקה אחרת שקרית אחרת. 

CPP
   // C++ code to demonstrate the working of    // clear() and empty()    #include          #include      // for clear() and empty()    using     namespace     std  ;      int     main  ()      {         // Initializing forward list       forward_list   <  int  >     flist1     =     {  1       2       3  };             // Displaying forward list before clearing       cout      < <     'The contents of forward list are : '  ;         for     (  int     &  x     :     flist1  )         cout      < <     x      < <     ' '  ;         cout      < <     endl  ;             // Using clear() to clear the forward list       flist1  .  clear  ();             // Displaying list after clear() performed       cout      < <     'The contents of forward list after '       < <     'clearing are : '  ;         for     (  int     &  x     :     flist1  )         cout      < <     x      < <     ' '  ;         cout      < <     endl  ;             // Checking if list is empty       flist1  .  empty  ()     ?     cout      < <     'Forward list is empty'     :         cout      < <     'Forward list is not empty'  ;             return     0  ;      }      

תְפוּקָה:

The contents of forward list are : 1 2 3 The contents of forward list after clearing are : Forward list is empty 

מורכבות זמן: O (1)

שטח עזר: O (1)
מאמרים אחרונים ב- Forward_list