Insert pour une liste liée pseudo-code

Dans l'Introduction à l'Algorithme Ed 3, j'ai lu le pseudo-code algo pour insérer un élément dans une linkedlist, et je ne comprends pas l'étape intermédiaire.

x.prev = L.head
if L.head != NIL
    L.head.prev = x
L.head = x
x.prev = NIL

et si mon original de la liste chaînée est HEAD -- 4 -- 24, je comprends que les étapes sont les suivantes:

  1. TÊTE -- 4 -- 24

  2. x -- 4 -- 24

  3. TÊTE -- x -- 4 -- 24

avec les 2. correspondant à

x.prev = L.head

Pourquoi nous avons pour insérer x avant de la tête avec

 if L.head != NIL
        L.head.prev = x

?

Pourrait smbdy préciser ?

  • Vous avez changé le pseudo-code de PLC, était-il intentionnel? La première ligne doit être x.next = L.head pas x.prev = L.head
  • oui merci beaucoup
InformationsquelleAutor | 2013-03-27