Êý¾Ý½á¹¹¿Î³Ì¿ÎºóϰÌâ´ð°¸.-Êý¾Ý½á¹¹µÚÎå°æ¿ÎºóϰÌâ´ð°¸ ÏÂÔØ±¾ÎÄ

typedef struct node {

ElemType data; struct node *next;

//Á´¶Ó½áµãÀàÐÍ

Á·Ï°Ìâ¼°²Î¿¼´ð°¸ } QNode;

//-----³õʼ»¯¶ÓÁÐ-----

void InitQueue(QNode *&rear) { }

//-----½ø¶ÓËã·¨-----

void EnQueue(QNode *&rear,ElemType x) { }

//-----³ö¶ÓËã·¨-----

int DeQueue(QNode *&rear,ElemType &x) { }

//-----ÅжӿÕËã·¨-----

QNode *q; if (rear==NULL) { } else { }

return 1;

//Ô­¶ÓÖÐÓÐÁ½¸ö»òÒÔÉϵĽáµã

q=rear->next; x=q->data;

rear->next=q->next; free(q); return 0; x=rear->data; free(rear); rear=NULL;

//¶Ó¿Õ

QNode *s;

s=(QNode *)malloc(sizeof(QNode)); //´´½¨Ð½áµã s->data=x; if (rear==NULL) { } else { }

s->next=rear->next; rear->next=s; rear=s;

//ÈÃrearÖ¸ÏòÕâ¸öвåÈëµÄ½áµã

//½«*s½áµã²åÈëµ½*rear½áµãÖ®ºó

s->next=s; rear=s;

//Ô­Á´¶ÓΪ¿Õ //¹¹³ÉÑ­»·Á´±í

rear=NULL;

else if (rear->next==rear) //Ô­¶ÓÖÐÖ»ÓÐÒ»¸ö½áµã

21

Êý¾Ý½á¹¹¼òÃ÷½Ì³Ì

int QueueEmpty(QNode *rear) { }

return(rear==NULL);

ÉÏ»úʵÑéÌâ3

¼ÙÉèÒÔIºÍO×Ö·û·Ö±ð±íʾ½øÕ»ºÍ³öÕ»²Ù×÷£¬Õ»µÄ³õ̬ºÍÖÕÕ»¾ùΪ¿Õ£¬½øÕ»ºÍ³öÕ»µÄ²Ù×÷ÐòÁпɱíʾΪ½öÓÉIºÍO×é³ÉµÄÐòÁС£ÈçIOIIOIOOÐòÁÐÊǺϷ¨µÄ£¬¶øIOOIOIIOÐòÁÐÊDz»ºÏ·¨µÄ¡£Éè¼ÆÒ»¸öËã·¨Åж¨Ëù¸øµÄ²Ù×÷ÐòÁÐÊÇ·ñºÏ·¨¡£ÈôºÏ·¨·µ»Ø1£»·ñÔò·µ»Ø0¡££¨¼ÙÉè±»Åж¨µÄ²Ù×÷ÐòÁÐÒÑ´æÈëһάÊý×éÖУ©¡£²¢ÓÃÏà¹ØÊý¾Ý½øÐвâÊÔ¡£

½â£º²ÉÓÃÒ»¸öÁ´Õ»À´ÅжϲÙ×÷ÐòÁÐÊÇ·ñºÏ·¨£¬ÆäÖÐstrΪ´æ·Å²Ù×÷ÐòÁеÄ×Ö·ûÊý×飬nΪ¸ÃÊý×éµÄÔªËØ¸öÊý£¨ÕâÀïµÄElemTypeÀàÐÍÉ趨Ϊchar£©¡£¶ÔÓ¦µÄËã·¨ÈçÏ£º

#include #include typedef struct node {

char data;

struct node *next;

//Á´Õ»½áµãÀàÐÍ //³õʼ»¯Õ»ÔËËãËã·¨

} LStack; { }

ls=NULL;

void InitStack(LStack *&ls)

void DestroyStack(LStack *&ls) //Ïú»ÙÕ»ÔËËãËã·¨ { }

void Push(LStack *&ls,char x) //½øÕ»ÔËËãËã·¨ { }

int Pop(LStack *&ls,char &x) {

LStack *p;

//³öÕ»ÔËËãËã·¨

LStack *p;

p=(LStack *)malloc(sizeof(LStack)); p->data=x; p->next=ls; ls=p;

//´´½¨½áµã*pÓÃÓÚ´æ·Åx //²åÈë*p½áµã×÷Ϊջ¶¥½áµã

LStack *pre=ls,*p; if (pre==NULL) return; p=pre->next; while (p!=NULL) { }

free(pre);

//ÊÍ·Åβ½áµã

free(pre);

//ÊÍ·Å*pre½áµã //pre¡¢pͬ²½ºóÒÆ

pre=p;p=p->next;

//¿¼ÂÇ¿ÕÕ»µÄÇé¿ö

}

int StackEmpty(LStack *ls) { }

int judge(char str[],int n) { }

void main() {

char str1[]=\char str2[]=\char str3[]=\char str4[]=\printf(\¸÷ÐòÁÐÅжϽá¹ûÈçÏÂ:\\n\int i,tag; char x; LStack *ls; InitStack(ls); for (i=0;i

tag=StackEmpty(ls); DestroyStack(ls); return tag;

if (str[i]=='I') { } else { }

DestroyStack(ls); return 0;

//ÆäËûÖµÎÞЧÍ˳ö

//ΪIʱ½øÕ»

Push(ls,str[i]); if (StackEmpty(ls)) { }

else Pop(ls,x);

DestroyStack(ls); return 0;

//Õ»¿Õʱ·µ»Ø0

//Á´Õ»ls³õʼ»¯

if (ls==NULL) return 1; else return 0; if (ls==NULL) { }

return 0;

else

Á·Ï°Ìâ¼°²Î¿¼´ð°¸ //Õ»¿Õ,ÏÂÒç³ö·µ»Ø0 //Õ»²»¿Õʱ³öÕ»ÔªËØx²¢·µ»Ø1 //pÖ¸ÏòÕ»¶¥½áµã //ȡջ¶¥ÔªËØx //ɾ³ý½áµã*p //ÊÍ·Å*p½áµã

p=ls;

x=p->data; ls=p->next; free(p); return 1;

//ÅжÏÕ»¿ÕÔËËãËã·¨

//ÅжÏstrÐòÁеĺϷ¨ÐÔ

else if (str[i]=='O') //ΪOʱ³öÕ»

//ջΪ¿Õʱ·µ»Ø1,·ñÔò·µ»Ø0

23

Êý¾Ý½á¹¹¼òÃ÷½Ì³Ì

}

printf(\ÐòÁÐ%sºÏ·¨µÄ\\n\ÊÇ\²»ÊÇ\printf(\ÐòÁÐ%sºÏ·¨µÄ\\n\ÊÇ\²»ÊÇ\printf(\ÐòÁÐ%sºÏ·¨µÄ\\n\ÊÇ\²»ÊÇ\printf(\ÐòÁÐ%sºÏ·¨µÄ\\n\ÊÇ\²»ÊÇ\

Á·Ï°Ìâ4

1. µ¥ÏîÑ¡ÔñÌâ

£¨1£©´®ÊÇÒ»ÖÖÌØÊâµÄÏßÐÔ±í£¬ÆäÌØÊâÐÔÌåÏÖÔÚ£¨ £©¡£ A.¿ÉÒÔ˳Ðò´æ´¢ B.Êý¾ÝÔªËØÊÇÒ»¸ö×Ö·û C.¿ÉÒÔÁ´Ê½´æ´¢ D.Êý¾ÝÔªËØ¿ÉÒÔÊǶà¸ö×Ö·û ´ð£ºB

£¨2£©ÒÔÏ£¨ £©ÊÇ\abcd321ABCD\´®µÄ×Ó´®¡£ A. abcd B.321AB ´ð£ºD

£¨3£©Á½¸ö´®ÏàµÈ±ØÓд®³¤¶ÈÏàµÈÇÒ£¨ £©¡£ A.´®µÄ¸÷λÖÃ×Ö·ûÈÎÒâ C.Á½¸ö´®º¬ÓÐÏàͬµÄ×Ö·û ´ð£ºB 2. Ìî¿ÕÌâ

£¨1£©¿Õ´®ÊÇÖ¸£¨ ¢Ù £©£¬¿Õ°×´®ÊÇÖ¸£¨ ¢Ú £©¡£

´ð£º¢Ù²»°üº¬ÈκÎ×Ö·û£¨³¤¶ÈΪ0£©µÄ´® ¢ÚÓÉÒ»¸ö»ò¶à¸ö¿Õ¸ñ£¨½öÓɿոñ·û£©×é³ÉµÄ´®

£¨2£©¶ÔÓÚ´øÍ·½áµãµÄÁ´´®s£¬´®Îª¿ÕµÄÌõ¼þÊÇ£¨ £©¡£ ´ð£ºs->next==NULL¡£

£¨3£©¶ÔÓÚÒ»¸öº¬ÓÐn¸ö×Ö·ûµÄÁ´´®s£¬²éÕÒµÚi¸öÔªËØµÄËã·¨µÄʱ¼ä¸´ÔÓ¶ÈΪ£¨ £©¡£ ´ð£ºO(n) 3. ¼ò´ðÌâ

£¨1£©ÉèsΪһ¸ö³¤¶ÈΪnµÄ´®£¬ÆäÖеÄ×Ö·û¸÷²»Ïàͬ£¬ÔòsÖеĻ¥ÒìµÄ·Çƽ·²×Ó´®£¨·Ç¿ÕÇÒ²»Í¬ÓÚs±¾Éí£©µÄ¸öÊýÊǶàÉÙ£¿

´ð£ºÓÉ´®sµÄÌØÐÔ¿ÉÖª£¬1¸ö×Ö·ûµÄ×Ó´®ÓÐn¸ö£¬2¸ö×Ö·ûµÄ×Ó´®ÓÐn-1¸ö£¬3¸ö×Ö·ûµÄ×Ó´®ÓÐn-2¸ö£¬¡­£¬n-2¸ö×Ö·ûµÄ×Ó´®ÓÐ3¸ö£¬n-1¸ö×Ö·ûµÄ×Ó´®ÓÐ2¸ö¡£ËùÒÔ£¬·Çƽ·²

n(n?1)×Ó´®µÄ¸öÊý=n+(n-1)+(n-2)+¡­+2=?1¡£

2£¨2£©Èôs1ºÍs2Ϊ´®£¬¸ø³öʹs1//s2=s2//s1³ÉÁ¢µÄËùÓпÉÄܵÄÌõ¼þ£¨ÆäÖУ¬¡°//¡±±íʾÁ½¸ö´®Á¬½ÓÔËËã·û£©¡£

C.\

D.\

B.´®Öи÷¶ÔӦλÖÃ×Ö·û¾ùÏàµÈ

D.Á½¸öËùº¬×Ö·ûÈÎÒâ