Êý¾Ý½á¹¹¿¼Ñи´Ï°Ìâ--µÚ¶þÕÂ--ÏßÐÔ±í£¨´ø´ð°¸£© ÏÂÔØ±¾ÎÄ

]¡Î½áÊøÆæÊýÁ´½áµã

s:=r;¡ÎsÖ¸ÏòеĴýÅÅÐò½áµã¡£ ]¡Î½áÊø¡°WHILE(s<>NIL)DO¡± ENDP£»¡Î½áÊøÕû¸öËã·¨¡£ [Ëã·¨ÌÖÂÛ]ÓÉÓÚËã·¨ÒªÇó¡°²»µÃʹÓÃNEW¹ý³ÌÉêÇë¿Õ¼ä£¬Ò²Ã»Ã÷È·Ö¸³öÁ´±í¾ßÓÐÍ·½áµã£¬ËùÒÔÉÏÊöËã·¨¸´ÔÓЩ£¬Ëü¿ÉÄÜÐèÒªÔÚµÚÒ»¸ö½áµãǰ²åÈëнáµã£¬¼´Á´±íµÄÍ·Ö¸Õë»á·¢Éú±ä»¯¡£ÈçÓÐÍ·½áµã£¬Ëã·¨²»±Øµ¥¶À´¦ÀíÔÚµÚÒ»¸ö½áµãǰ²åÈë½áµãÇé¿ö£¬Ëã·¨»á¹æ·¶Í³Ò»£¬ÏÂÃæµÄ£¨1£©ÊÇ´¦Àí´øÍ·½áµãµÄÀý×Ó¡£Ëã·¨ÖÐżÊýÁ´ÉϽáµãÊÇ¿¿Êý¾ÝÕû³ý2µÈÓÚ0£¨DATA DIV 2=0£©Åжϵġ£

ÀàËÆ±¾ÌâµÄÆäËüÌâ½â´ðÈçÏ£º

£¨1£©[ÌâÄ¿·ÖÎö]±¾Ìâ»ù±¾ÀàËÆÓÚÉÏÃæµÚ7Ì⣬²»Í¬Ö®´¦Óжþ¡£Ò»ÊÇ´øÍ·½áµã£¬¶þÊÇ·Ö½âºóµÄÁ½¸öÁ´±í£¬Ò»¸öÊÇÊý¾ÝֵСÓÚ0£¬ÁíÒ»¸öÊÇÊý¾ÝÖµ´óÓÚ0¡£ÓÉÓÚûÃ÷È·ÒªÇóÓÃÀàPASCALÊéдËã·¨£¬¹ÊÓÃCÊéдÈçÏ¡£

void DisCreat1(LinkedList A)

¡ÎAÊÇ´øÍ·½áµãµÄµ¥Á´±í£¬Á´±íÖнáµãµÄÊý¾ÝÀàÐÍΪÕûÐÍ¡£±¾Ëã·¨½«A·Ö½â³ÉÁ½¸öµ¥Á´±íBºÍC£¬BÖнáµãµÄÊý¾ÝСÓÚÁ㣬CÖнáµãµÄÊý¾Ý´óÓÚÁã¡£ {B=A;

C=(LinkedList )malloc(sizeof(LNode));¡ÎΪCÉêÇë½áµã¿Õ¼ä¡£ C->next=null ¡ÎC³õʼ»¯Îª¿Õ±í¡£ p=A->next; ¡ÎpΪ¹¤×÷Ö¸Õë¡£ B->next=null; ¡ÎB±í³õʼ»¯¡£ while(p!=null)

{r=p->next; ¡ÎÔÝ´æpµÄºó¼Ì¡£

if (p->data<0)¡ÎСÓÚ0µÄ·ÅÈëB±í¡£

{p->next=B->next; B->next=p; }¡Î½«Ð¡ÓÚ0µÄ½áµãÁ´ÈëB±í¡£ else {p->next=C->next; C->next=p; } p=r;¡ÎpÖ¸ÏòеĴý´¦Àí½áµã¡£ }

}¡ÎËã·¨½áÊø¡£

[Ëã·¨ÌÖÂÛ]ÒòΪ±¾ÌⲢδҪÇóÁ´±íÖнáµãµÄÊý¾ÝÖµÓÐÐò£¬ËùÒÔËã·¨ÖвÉÈ¡×î¼òµ¥·½Ê½£º½«Ð½áµãǰ²åµ½Í·½áµãºóÃæ£¨¼´µÚÒ»ÔªËØÖ®Ç°£©¡£ £¨2£© ±¾ÌâͬÉÏÃæµÚ7Ì⣬³ý¸ö±ðÐðÊö²»Í¬Í⣬±¾ÖÊÉÏÍêÈ«Ïàͬ£¬¹Ê²»ÔÙÁí×÷½â´ð¡£

£¨3£©[ÌâÄ¿·ÖÎö]±¾ÌâÖеÄÁ´±íÓÐÍ·½áµã£¬·Ö½â³É±íAºÍ±íB£¬¾ù´øÍ·½áµã¡£·Ö½âºóµÄA±íº¬ÓÐÔ­±íÖÐÐòºÅÎªÆæÊýµÄÔªËØ£¬B±íº¬ÓÐÔ­A±íÖÐÐòºÅΪżÊýµÄÔªËØ¡£ÓÉÓÚÒªÇó·Ö½âºóÁ½±íÖÐÔªËØ½áµãµÄÏà¶Ô˳Ðò²»±ä£¬¹Ê²ÉÓÃÔÚÁ´±íβ²åÈë±È½Ï·½±ã£¬ÕâʹÓÃÒ»Ö¸Ïò±íβµÄÖ¸Õë¼´¿É·½±ãʵÏÖ¡£

void DisCreat3(LinkedList A)

¡ÎAÊÇ´øÍ·½áµãµÄµ¥Á´±í£¬±¾Ëã·¨½«Æä·Ö½â³ÉÁ½¸ö´øÍ·½áµãµÄµ¥Á´±í£¬A±íÖк¬Ô­±íÖÐÐòºÅÎªÆæÊý

¡ÎµÄ½áµã£¬B±íÖк¬Ô­±íÖÐÐòºÅΪżÊýµÄ½áµã¡£Á´±íÖнáµãµÄÏà¶Ô˳ÐòͬԭÁ´±í¡£ {i=0;¡Îi¼ÇÁ´±íÖнáµãµÄÐòºÅ¡£

B=(LinkedList)malloc(sizeof(LNode);¡Î´´½¨B±í±íÍ·¡£ B->next=null; ¡ÎB±íµÄ³õʼ»¯¡£

LinkedList ra,rb;¡ÎraºÍrb½«·Ö±ðÖ¸Ïò½«´´½¨µÄA±íºÍB±íµÄβ½áµã¡£

ra=A;rb=B;

p=A->next; ¡ÎpΪÁ´±í¹¤×÷Ö¸Õ룬ָÏò´ý·Ö½âµÄ½áµã¡£ A->next=null; ¡ÎÖÿÕеÄA±í while(p!=null)

{r=p->next; ¡ÎÔÝ´æpµÄºó¼Ì¡£ i++;

if(i%2==0) ¡Î´¦ÀíÔ­ÐòºÅΪżÊýµÄÁ´±í½áµã¡£

{p->next=rb->next;¡ÎÔÚB±íβ²åÈëнáµã£» rb->next=p; rb=p;¡ÎrbÖ¸ÏòеÄβ½áµã£» }

else¡Î´¦ÀíÔ­ÐòºÅÎªÆæÊýµÄ½áµã¡£

{p->next=ra->next; ra->next=p; ra=p; }

p=r; ¡Î½«p»Ö¸´ÎªÖ¸ÏòеĴý´¦Àí½áµã¡£ }¡ÎËã·¨½áÊø

8£®[ÌâÄ¿·ÖÎö]ÌâĿҪÇóÖØÅÅn¸öÔªËØÇÒÒÔ˳Ðò´æ´¢½á¹¹´æ´¢µÄÏßÐÔ±í£¬Ê¹µÃËùÓÐֵΪ¸ºÊýµÄÔªËØÒÆµ½ÕýÊýÔªËØµÄÇ°Ãæ¡£Õâ¿É²ÉÓÿìËÙÅÅÐòµÄ˼ÏëÀ´ÊµÏÖ£¬Ö»ÊÇÌá³öÔÝ´æµÄµÚÒ»¸öÔªËØ£¨ÊàÖᣩ²¢²»×÷ΪÒÔºóµÄ±È½Ï±ê×¼£¬±È½ÏµÄ±ê×¼ÊÇÔªËØÊÇ·ñΪ¸ºÊý¡£ int Rearrange£¨SeqList a; int n)

¡ÎaÊǾßÓÐn¸öÔªËØµÄÏßÐÔ±í£¬ÒÔ˳Ðò´æ´¢½á¹¹´æ´¢£¬ÏßÐÔ±íµÄÔªËØÊÇÕûÊý¡£±¾Ëã·¨ÖØ

ÅÅÏßÐÔ±ía£¬

¡ÎʹËùÓÐֵΪ¸ºÊýµÄÔªËØÒÆµ½ËùÓÐֵΪÕýÊýµÄÊýµÄÇ°Ãæ¡£ {i=0; j=n-1; ¡Î i,jΪ¹¤×÷Ö¸Õ루ϱ꣩£¬³õʼָÏòÏßÐÔ±íaµÄµÚ1¸öºÍµÚn¸öÔª

ËØ¡£

t=a[0]; ¡ÎÔÝ´æÊàÖáÔªËØ¡£ while(i

{while(i=0) j--; ¡Î Èôµ±Ç°ÔªËØÎª´óÓÚµÈÓÚÁ㣬ÔòÖ¸ÕëÇ°ÒÆ¡£ if(i

while(i

a[i]=t; ¡Î½«Ô­µÚÒ»ÔªËØ·Åµ½×îÖÕλÖᣠ}

[Ëã·¨ÌÖÂÛ] ±¾Ë㷨ʱ¼ä¸´ÔÓ¶ÈΪO£¨n£©¡£Ëã·¨Ö»Êǰ´ÌâĿҪÇó°ÑÕý¸ºÊý·Ö¿ª£¬ÈçÒªÇóͳ¼Æ¸ºÊýºÍ´óÓÚµÈÓÚÁãµÄ¸öÊý£¬Ôò×îºóÒÔtÀ´¶¨¡£ÈçtΪ¸ºÊý£¬Ôò0ÖÁi¹²i+1¸ö¸ºÊý£¬n-1-i¸öÕýÊý£¨°üÀ¨Á㣩¡£ÁíÍ⣬ÌâÄ¿²¢Î´Ìá¼°ÁãµÄÎÊÌ⣬±ÊÕß½«Áã·Åµ½ÕýÊýÒ»±ß¡£¶Ô´ËÎÊÌâµÄÀ©³äÊÇÈôÔªËØ°üº¬ÕýÊý¡¢¸ºÊýºÍÁ㣬²¢ÒªÇó°´¸ºÊý¡¢Áã¡¢ÕýÊýµÄ˳ÐòÖØÅÅÏßÐÔ±í£¬Í³¼Æ¸ºÊý¡¢Áã¡¢ÕýÊýµÄ¸öÊý¡£Çë¶ÁÕßÀûÓÃÉÏÃæ½âÌâ˼Ïë×ÔÐнâ´ð¡£ ÀàËÆ±¾ÌâµÄÑ¡ÁË5 ¸öÌ⣬Æä½â´ðÈçÏ£º

£¨1£©ÓëÉÏÃæµÚ8ÌⲻͬµÄÊÇ£¬ÕâÀïÒªÇóÒÔanΪ²Î¿¼ÔªËØ£¬½«ÏßÐÔ±í·Ö³É×óÓÒÁ½²¿·Ö¡£×ó°ë²¿·ÖµÄÔªËØ¶¼Ð¡ÓÚµÈÓÚan£¬ÓҰ벿·ÖµÄÔªËØ¶¼´óÓÚan£¬anλÓÚ·Ö½çλÖÃÉÏ¡£ÆäËã·¨Ö÷ҪƬ¶ÎÓï¾äÈçÏÂ:

i=1;j=n;

t=a[n]; ¡ÎÔÝ´æ²Î¿¼ÔªËØ¡£ while(i

{while(i

while(it) j--; ¡Îµ±Ç°ÔªËØ´óÓڲο¼ÔªËØÊ±Ö¸ÕëÇ°ÒÆ¡£ if(i

a[i]=t; ¡Î²Î¿¼ÔªËØÖÃÓÚ·Ö½çλÖá£

(2) [ÌâÄ¿·ÖÎö]±¾ÌâÒªÇó½«ÏßÐÔ±íA·Ö³ÉBºÍCÁ½¸ö±í£¬±íBºÍ±íC²»ÁíÕ¼¿Õ¼ä£¬¶øÊÇÀûÓñíAµÄ¿Õ¼ä£¬ÆäËã·¨ÓëµÚ8ÌâÏàͬ¡£ÕâÀï½ö°Ñ±íBºÍ±íCÁíÉè¿Õ¼äµÄËã·¨½â´ðÈçÏ£º void Rearrange2(int A[],B[],C[])

¡ÎÏßÐÔ±íAÓÐn¸öÕûÐÍÔªËØ£¬Ë³Ðò´æ´¢¡£±¾Ëã·¨½«A²ð³ÉBºÍC Á½¸ö±í£¬BÖдæ·Å

´óÓÚ

¡ÎµÈÓÚÁãµÄÔªËØ£¬CÖдæ·ÅСÓÚÁãµÄÔªËØ¡£

{i=0; ¡Îi£¬j£¬kÊǹ¤×÷Ö¸Õ룬·Ö±ðÖ¸ÏòA¡¢BºÍC±íµÄµ±Ç°ÔªËØ¡£ j=k=-1; ¡Îj£¬k³õʼ»¯Îª-1¡£ while(i

{if(A[i]<0) C[++k]=A[i++]; ¡Î½«Ð¡ÓÚÁãµÄÔªËØ·ÅÈëC±í¡£ else B[++j]=A[i++]; ¡Î½«´óÓÚÁãµÄÔªËØ·ÅÈëB±í¡£

[Ëã·¨ÌÖÂÛ]±¾ÌâÓÃһάÊý×é´æ´¢ÏßÐÔ±í£¬½á¹ûÏßÐÔ±íBºÍCÖзֱðÓÐj+1ºÍk+1¸öÔªËØ¡£Èô²ÉÓý̲ÄÖеÄÏßÐÔ±í£¬ÔòÔªËØµÄ±íʾ×÷ÏàÓ¦¸Ä±ä£¬ÀýÈçA.elem[i]£¬¶ø×îºóBºÍC±íÓ¦ÖÃÉϱíµÄ³¤¶È£¬ÈçB.length=jºÍC.length=k¡£

(3) ±¾ÌâÓëµÚ8Ìâ±¾ÖÊÉÏÏàͬ£¬µÚ8ÌâÒªÇó·Ö¿ªÕýÊýºÍ¸ºÊý£¬ÕâÀïÒªÇó·Ö¿ªÆæÊýºÍżÊý£¬Åбð·½Ê½ÊÇa[i]%2==0£¬Âú×ãʱΪżÊý£¬·´Ö®ÎªÆæÊý¡£ (4) ±¾ÌâÓëµÚ8ÌâÏàͬ£¬Ö»ÊÇÐðÊö²»Í¬¡£

(5) ±¾ÌâÓëµÚ8Ìâ»ù±¾Ïàͬ£¬²»Í¬Ö®´¦ÔÚÓÚÕâÀïµÄ·Ö½çÔªËØÊÇÕûÊý19£¨Á´±íÖв¢²»Òª

ÇóÒ»¶¨ÓÐ19£©¡£±¾ÌâÒªÇóÓñê×¼pascalÃèÊöËã·¨£¬ÈçÏÂËùʾ¡£ TYPE arr=ARRAY[1..1000] OF integer£» VAR a£ºarr£»

PROCEDURE Rearrange5£¨VAR a£ºarr£©£»

¡ÎaÊÇn£¨Éèn=1000£©¸öÕûÊý×é³ÉµÄÏßÐÔ±í£¬ÓÃһάÊý×é´æ´¢¡£±¾Ëã·¨½«n¸öÔªËØ

ÖÐËùÓдóÓÚµÈÓÚ19µÄÕûÊý·ÅÔÚËùÓÐСÓÚ19µÄÕûÊýÖ®ºó¡£

VAR i,j,t£ºinteger£» BEGIN

i:=1£»j:=n£»t:=a[1] £»¡Îi,jָʾ˳Ðò±íµÄÊ×Î²ÔªËØµÄϱ꣬tÔÝ´æ·Ö½çÔªËØ WHILE£¨i

WHILE £¨i=19£© DO j:=j-1£»

IF£¨i

IF£¨i

[Ëã·¨ÌÖÂÛ] ·Ö½çÔªËØt·ÅÈëa[i]£¬¶ø²»ÂÛËüµÄÖµÈçºÎ¡£Ëã·¨ÖÐÖ»ÓÃÁËÒ»¸ötÖмä±äÁ¿£¬·ûºÏ¿Õ¼ä¸´ÔÓ¶ÈO(1)µÄÒªÇó¡£Ëã·¨Ò²Âú×ãʱ¼ä¸´ÔÓ¶ÈO(n)µÄÒªÇó¡£

9£®[ÌâÄ¿·ÖÎö] ±¾ÌâÒªÇóÔÚµ¥Á´±íÖÐɾ³ý×îСֵ½áµã¡£µ¥Á´±íÖÐɾ³ý½áµã£¬ÎªÊ¹½áµãɾ³ýºó²»³öÏÖ¡°¶ÏÁ´¡±£¬Ó¦ÖªµÀ±»É¾½áµãµÄǰÇý¡£¶ø¡°×îСֵ½áµã¡±ÊÇÔÚ±éÀúÕû¸öÁ´±íºó²ÅÄÜÖªµÀ¡£ËùÒÔËã·¨Ó¦Ê×ÏȱéÀúÁ´±í£¬ÇóµÃ×îСֵ½áµã¼°ÆäǰÇý¡£±éÀú½áÊøºóÔÙÖ´ÐÐɾ³ý²Ù×÷¡£

LinkedList Delete£¨LinkedList L£©

¡ÎLÊÇ´øÍ·½áµãµÄµ¥Á´±í£¬±¾Ë㷨ɾ³ýÆä×îСֵ½áµã¡£

{p=L->next£» ¡ÎpΪ¹¤×÷Ö¸Õë¡£Ö¸Ïò´ý´¦ÀíµÄ½áµã¡£¼Ù¶¨Á´±í·Ç¿Õ¡£ pre=L£» ¡ÎpreÖ¸Ïò×îСֵ½áµãµÄǰÇý¡£

q=p£» ¡ÎqÖ¸Ïò×îСֵ½áµã£¬³õʼ¼Ù¶¨µÚÒ»ÔªËØ½áµãÊÇ×îСֵ½áµã¡£ while£¨p->next!=null£©

{if£¨p->next->datadata£©{pre=p£»q=p->next£»} ¡Î²é×îСֵ½áµã p=p->next£» ¡ÎÖ¸ÕëºóÒÆ¡£ }

pre->next=q->next£»¡Î´ÓÁ´±íÉÏɾ³ý×îСֵ½áµã free£¨q£©£» ¡ÎÊÍ·Å×îСֵ½áµã¿Õ¼ä }¡Î½áÊøËã·¨delete¡£

[Ëã·¨ÌÖÂÛ] Ëã·¨Öк¯ÊýÍ·Êǰ´±¾½Ì²ÄÀàCÃèÊöÓïÑÔÊéдµÄ¡£Ô­ÌâÖÐvoid delete£¨linklist &L£©£¬Êǰ´C++µÄ¡°ÒýÓá±À´Ð´µÄ£¬Ä¿µÄÊÇʵÏÖ±äÁ¿µÄ¡°´«Ö·¡±£¬¿Ë·þÁËCÓïÑÔº¯Êý´«µÝÖ»ÊÇ¡°Öµ´«µÝ¡±µÄȱµã¡£

10£®[ÌâÄ¿·ÖÎö] ±¾ÌâÒªÇó½«Á´±íÖÐÊý¾ÝÓòÖµ×îСµÄ½áµãÒÆµ½Á´±íµÄ×îÇ°Ãæ¡£Ê×ÏÈÒª²éÕÒ×îСֵ½áµã¡£½«ÆäÒÆµ½Á´±í×îÇ°Ãæ£¬ÊµÖÊÉÏÊǽ«¸Ã½áµã´ÓÁ´±íÉÏժϣ¨²»ÊÇɾ³ý²¢»ØÊտռ䣩£¬ÔÙ²åÈëµ½Á´±íµÄ×îÇ°Ãæ¡£

LinkedList delinsert£¨LinkedList list£©

¡ÎlistÊÇ·Ç¿ÕÏßÐÔÁ´±í£¬Á´½áµã½á¹¹ÊÇ£¨data£¬link£©£¬dataÊÇÊý¾ÝÓò£¬linkÊÇÁ´Óò¡£

¡Î±¾Ëã·¨½«Á´±íÖÐÊý¾ÝÓòÖµ×îСµÄÄǸö½áµãÒÆµ½Á´±íµÄ×îÇ°Ãæ¡£ {p=list->link£»¡ÎpÊÇÁ´±íµÄ¹¤×÷Ö¸Õë

pre=list£» ¡ÎpreÖ¸ÏòÁ´±íÖÐÊý¾ÝÓò×îСֵ½áµãµÄǰÇý¡£ q=p£» ¡ÎqÖ¸ÏòÊý¾ÝÓò×îСֵ½áµã£¬³õʼ¼Ù¶¨ÊǵÚÒ»½áµã while £¨p->link!=null£©

{if£¨p->link->datadata£©{pre=p£»q=p->link£»} ¡ÎÕÒµ½ÐµÄ×îСֵ½áµã£» p=p->link£» }

if (q!=list->link) ¡ÎÈô×îСֵÊǵÚÒ»ÔªËØ½áµã£¬Ôò²»ÐèÔÙ²Ù×÷ {pre->link=q->link£» ¡Î½«×îСֵ½áµã´ÓÁ´±íÉÏժϣ» q->link= list->link£»¡Î½«q½áµã²åµ½Á´±í×îÇ°Ãæ¡£ list->link=q£»

}

}¡ÎËã·¨½áÊø

[Ëã·¨ÌÖÂÛ] Ëã·¨Öмٶ¨list´øÓÐÍ·½áµã£¬·ñÔò£¬²åÈë²Ù×÷±äΪq->link=list£»list=q¡£ 11£®[ÌâÄ¿·ÖÎö] ÖªµÀË«ÏòÑ­»·Á´±íÖеÄÒ»¸ö½áµã£¬ÓëǰÇý½»»»Éæ¼°µ½Ëĸö½áµã£¨p½áµã£¬Ç°Çý½áµã£¬Ç°ÇýµÄǰÇý½áµã£¬ºó¼Ì½áµã£©ÁùÌõÁ´¡£

void Exchange£¨LinkedList p£©

¡ÎpÊÇË«ÏòÑ­»·Á´±íÖеÄÒ»¸ö½áµã£¬±¾Ëã·¨½«pËùÖ¸½áµãÓëÆäǰÇý½áµã½»»»¡£ {q=p->llink£»