[刷 题] LeetCode 24 Nodos Intercambia en París

reclamación

  • Dada una lista, por cada dos nodos adyacentes intercambian su posición

Ejemplos

  • 1-> 2-> 3-> 4-> NULL
  • 2-> 1-> 4-> 3-> NULL

 

realización

1  struct NodoLista {
 2      int val;
3      NodoLista * siguiente;
4      NodoLista ( int x): val (x), al lado (NULL) {}
 5  };
6   
7  clase Solution {
 8  público :
 9      NodoLista * swapPairs (NodoLista * cabeza) {
 10          NodoLista * dummyHead = nuevo NodoLista ( 0 );
11          dummyHead-> siguiente = cabeza;
12          
13          NodoLista * p = dummyHead;
14          mientras(P-> siguiente && p-> next-> siguiente) {
 15              NodoLista * node1 = p-> siguiente;
16              NodoLista * nodo2 = node1-> siguiente;
17              NodoLista * = node2- siguiente> siguiente;
18              
19              node2-> siguiente = node1;
20              node1-> siguiente = próximo;
21              p-> siguiente = node2;
22              
23              p = node1;
24          }
 25          
26          NodoLista * retNode = dummyHead-> siguiente;
27          de borrado dummyHead;
28          
29         volver retNode;
30      }
 31 };
Ver código

relacionados

  • 25 nodos inversa en k-Group
  • 147 Lista Ordenar Inserción
  • 148 Ordenar lista

Supongo que te gusta

Origin www.cnblogs.com/cxc1357/p/12640484.html
Recomendado
Clasificación