Advertisement
SSemen

Untitled

Dec 21st, 2019
399
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.14 KB | None | 0 0
  1. void swapElement(int i, int j) {
  2.     struct Node* ptr = first;
  3.     struct Node* prev_ptr = first;
  4.  
  5.     struct Node* j_left = first;
  6.     struct Node* j_ = first;
  7.     struct Node* j_right = first;
  8.  
  9.     struct Node* i_left = first;
  10.     struct Node* i_ = first;
  11.     struct Node* i_right = first;
  12.    
  13.     struct Node* t_ = first;
  14.  
  15.     int index = 0;
  16.     while (ptr != NULL) {
  17.         if (index == i) {
  18.            
  19.             i_ = ptr;
  20.             i_right = ptr->next;
  21.         }
  22.  
  23.         if (index == j) {
  24.            
  25.             j_ = ptr;
  26.             j_right = ptr->next;
  27.         }
  28.  
  29.         prev_ptr = ptr;
  30.         ptr = ptr->next;
  31.         index++;
  32.     }
  33.  
  34.     //t_ = i_left;
  35.     //i_left = j_left;
  36.     //j_left = t_;
  37.  
  38.     //t_ = i_right;
  39.     //i_right = j_right;
  40.     //j_right = t_;
  41.  
  42.     ptr = first;
  43.     index = 0;
  44.     while (ptr != NULL) {
  45.        
  46.         if (index == i) {
  47.             ptr = j_;
  48.             ptr->next = i_right;
  49.         }
  50.  
  51.        
  52.         if (index == j) {
  53.             ptr = i_;
  54.             ptr->next = j_right;
  55.         }
  56.  
  57.         ptr = ptr->next;
  58.         index++;
  59.     }
  60. }
  61.  
  62.  
  63.  
  64. void  main() {
  65.     printList();
  66.  
  67.     addToHead(1);
  68.     addToHead(3);
  69.     addToHead(6);
  70.     addToHead(7);
  71.     addToHead(8);
  72.     addToHead(12);
  73.     printList();
  74.  
  75.     swapElement(2, 4);
  76.     printList();
  77.  
  78.     clearList();
  79.     printList();
  80.  
  81.     {
  82.         int x;
  83.         scanf("%d", &x);
  84.     }
  85. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement