ÇÁ·Î±×·¡¹Ö

 3198, 1/160 ȸ¿ø°¡ÀÔ  ·Î±×ÀΠ 
   ¸Þ¹ö¸®Å°
   [C++] ¾Æ ¸µÅ©µå¸®½ºÆ® Áö¿ì±â ¹®Á¦,,

http://www.hackerschool.org/HS_Boards/zboard.php?AllArticle=true&no=3054 [º¹»ç]


À§¿¡ ³ëµå´Â
struct node{
       int data;
       node* prev;
       node* next;
       };
ÀÌ·¸°Ô Á¤ÀǵÇÀÖ°í..

void llist::remove(int data){
     node* temp = head->next;
    
     while(temp->next != tail){
                if (temp->data == data){
                               temp->prev->next = temp->next;
                               temp->next = temp->prev;
                               delete temp;
                               return;}
                else {
                     temp= temp->next;
                     }
                     }
     cout << "¸®½ºÆ® ³»¿¡ ±×·± µ¥ÀÌÅͰ¡ ¾ø½À´Ï´Ù." << endl;
}
¸®¹«ºê´Â ÀÌ·¸°Ô Á¤ÀÇÇߴµ¥ Áö¿ì±â°¡¾ÈµÇ³×¿ä..

µµ¿ÍÁÖ¼¼¿ä...

  Hit : 4160     Date : 2011/06/13 04:28



    
¿µ¿øÇѰøºÎ µ¿ÀÛ ¼ø¼­¿¡ ¹®Á¦°¡ Àֳ׿ä.

¸¸¾à temp°¡ ÇöÀç °¡¸®Å°°í ÀÖ´Â ±¸Á¶Ã¼¿¡ Áö¿ö¾ßÇÒ µ¥ÀÌÅͰ¡ ÀÖ°í, ¾Æ·¡¿Í °°Àº »óȲÀ̶ó¸é

temp¡¡¡¡¡¡¡¡¡¡¡¡ ¡¡¡¡¡¡¡¡tail
¡é ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡é
------------------- ¡¡¡¡¡¡¡¡-----------------
¤Ó_______________¤Ó ¡¡¡¡¡¡¤Ó______________¤Ó


temp->next ÀÇ °ªÀº tail°ú °°±â ¶§¹®¿¡

while(temp->next != tail) ÀÌ Á¶°Ç¿¡ °É·Á¼­ ¾È¿¡ ÀÖ´Â Á¶°Ç¹®À» ½ÇÇàÇÏÁö ¾Ê°ÚÁÒ.


Áö±Ý ÇÔ¼öµ¿ÀÛ¼ø¼­°¡

¨ç temp->next¿Í tailÀ» ºñ±³

¨è temp->next¿Í tailÀÌ ´Ù¸£¸é temp->data¿Í data¸¦ ºñ±³

¨é °°Áö ¾ÊÀ¸¸é temp¸¦ ´ÙÀ½±¸Á¶Ã¼·Î À̵¿

ÀÌ ¼ø¼­Àε¥ À̰É

¨ç temp->data¿Í data¸¦ ºñ±³

¨è °°Áö ¾ÊÀ¸¸é temp¸¦ ´ÙÀ½ ±¸Á¶Ã¼·Î À̵¿

¨é temp->next¿Í tailÀ» ºñ±³

ÀÌ·±½ÄÀ¸·Î ¹Ù²Ù¸é µÉ°Å¿¡¿ä.
2011/06/13  
¿µ¿øÇѰøºÎ ¹Ø¿¡ Á¦°¡ °íÄ£ °É ¿Ã·Á³ù´Âµ¥ ¹®Á¦ ÇØ°á ¾È µÇ½Ã¸é º¸¼¼¿ä.




















void llist::remove(int data){
¡¡¡¡node* temp = head;

¡¡¡¡while(temp->next != tail){
¡¡¡¡¡¡¡¡temp = temp->next;
¡¡
¡¡¡¡¡¡¡¡if (temp->data == data){
¡¡¡¡¡¡¡¡¡¡¡¡temp->prev->next = temp->next;
¡¡¡¡¡¡¡¡¡¡¡¡//temp->next = temp->prev; //À̺κÐÀº ±»ÀÌ ÇÊ¿ä ¾ø´Â °Í °°¾Æ¿ä.
¡¡¡¡¡¡¡¡¡¡¡¡delete temp;
¡¡¡¡¡¡¡¡¡¡¡¡return;}
¡¡¡¡}

¡¡¡¡cout << "¸®½ºÆ® ³»¿¡ ±×·± µ¥ÀÌÅͰ¡ ¾ø½À´Ï´Ù." << endl;
}
2011/06/13  
¸Þ¹ö¸®Å° °¨»çÇÕ´Ï´Ù..
±×°Ô ±ÞÇÏ°Ô °íÄ£°Å¶ó¼­ Çò°¥·È¾ú´Âµ¥ ¾î¶»°Ôã¾Æ³»¼Ì´ÂÁö..
for(;;) cout << "Good!!";
= ¼ÒÀ½°øÇØ ¾î¶µç
±×·¸°Ô°íÃĵεDZ¸ temp->next != NULL·Î ¹Ù²ãµÎ µÇ´Â°Í°°¾Æ¿ä
±×¸®°í temp->next->prev = temp->prev; ÀÌ°Å ÇØÁà¾ßÇҰͰ°¾Æ¿ä..
°©Àڱ⠴ÔÄڵ庸´Ï±î ¹ø¶àÇÏ°í »ý°¢³µ¾î¿ä..°¨»çÇÕ´Ï´Ù..
2011/06/13  
¿µ¿øÇѰøºÎ ¸Þ¹ö¸®Å°// temp->next->prev = temp->prev; ÀÌ°É Àذí ÀÖ¾ú³×¿ä....
±×¸®°í Á¦°¡ ÇÑ ¹æ½Äº¸´Ù ´ÔÀÌ ¸»¾¸ÇϽŠtemp->next != NULL ÀÌ°Ô ´õ ÀÌÇØÇϱ⠽¬¿î °Í °°¾Æ¿ä.
Àúµµ ´ÙÀ½¿¡ ÀÌ°É·Î ÇØ¾ß°Ú¾î¿ä °¨»çÇÕ´Ï´Ù.
2011/06/14