การแทรกโหนดในลิงค์ลิสต์แบบโยงคู่ค่อนข้างซับซ้อนกว่าโยงเดี่ยว      เพราะจำเป็นพิจารณาพอยเตอร์หลายตัวด้วยกัน

กรณีการแทรกโหนดในลิสต์แบเดี่ยว

                  โหนดใหม่ที่ชี้โดย  p  จะนำไปแทรกในลิสต์ก่อนหน้าโหนดที่ชี้โดย  start  จากภาพ

                                        Prev                                        start

 


 

Yupa

 

n

Suda

 

n

 

Arun

Dara

 head

 


                                                                                       2                                       1

n

Suda

                                                      p

 

 

                                   เราใช้พอยเตอร์2ตัว  คือ  prev  กับ  start  เพื่อท่องเข้าไปในลิสต์  และใช้ 2 คำ เพื่อสั่งการแทรก  ดังนี้

                                              p->next  =  start ;

                                              prev->next =p;

 

 

 กรณีการแทรกโหนดในลิสต์แบบโยงคู่

                          

                                                                                start

 

 

Yupa

 

n

Suda

 

n

 

Arun

Dara

 head

 


                                                                                                3            4                                               1

n

Suda

 

                                                           2                                                              1

 

 


                                                                     p

 

 

 

สามารถใช้พอยเตอร์เพียงตัวเดียวคือ  start  เพื่อท่องเข้าไปในลิสต์  และการแทรกโหนด  p หน้าโหนด  start  จำเป็นต้องใช้ 4 คำสั่ง  ดังนี้

                                                         p->next  =  start ;

                                            p->back = start->back ;

                                               start->back->next = p;

                                                 start->back = p;

ลำดับความสำคัญข้างต้นมีความสำคัญ  จึงต้องระมัดระวังเป็นพิเศษ  เช่น  หากเราเปลี่ยนฟิลด์  start -> back  ก่อนคำสั่งอื่น  จะมีผลให้ไม่สามารถอ้างถึงโหนดที่อยู่ก่อนหน้า  start ได้