考研数据结构(王道代码题)
热心小张
这个作者很懒,什么都没留下…
展开
-
考研数据结构算法题总结
考研数据结构100天Day1:在带头结点的单链表L中,删除所有值为X的节点,并释放其空间,假设值为的X节点不唯一,试编写算法以实现上述操作void Del-X(LinkList &L,int x){ LNode *p=L->next; LNode *pre=L; LNode *q; while(p!=NULL){ if(p->data==x){ q=p; p=p->next; pre->next=p; free(q); }else{原创 2021-10-18 09:54:34 · 4460 阅读 · 4 评论 -
数据结构第三章--栈实现括号匹配完整算法
#include<stdio.h>#include<stdlib.h>typedef struct LNode{ char data; struct LNode *next;}LNode,*SqStack;//初始化栈 void InitSqStack(SqStack *L){ (*L) = (LNode *)malloc(sizeof(LNode)); (*L)->next = NULL;}//入栈void push(SqStack *L,ch原创 2021-07-17 14:19:38 · 230 阅读 · 0 评论 -
数据结构第三章--队列实现基本方法
顺序存储#include<stdio.h>#include<stdlib.h>#define MaxSize 10typedef struct{ int data[MaxSize]; int front,rear;}SqQueue;//初始化void InitQueue(SqQueue *Q){ (*Q).front = (*Q).rear = 0;} //判空int QueueEmpty(SqQueue Q){ if(Q.front==Q.rea原创 2021-07-15 14:51:14 · 112 阅读 · 0 评论 -
数据结构第三章--栈实现基本方法
#include<stdio.h>#define MaxSize 100typedef struct{ int data[MaxSize]; int top;}SqStack;//初始化栈void InitStack(SqStack *S){ (*S).top = -1; } //判断栈空int StackEmpty(SqStack S){ if(S.top==-1) return 1; return 0;} //新元素入栈int Push(Stack原创 2021-07-14 14:02:00 · 93 阅读 · 0 评论 -
数据结构第二章--线性表的链式表示
#include<stdio.h>#include<stdlib.h> //带头结点 //定义结点类型typedef struct LNode{ int data; struct LNode *next; }LNode,*LinkList; //打印单链表void Listprint(LinkList L){ LNode *p = L->next; while(p!=NULL){ printf("%d\t",p->data); p =原创 2021-07-11 15:29:43 · 208 阅读 · 0 评论 -
数据结构第二章--线性表的顺序表示
静态分配#include<stdio.h>//定义结构(静态分配) #define MaxSize 50 typedef struct{ int data[MaxSize];//顺序表的元素 int length; //顺序表当前长度 }Sqlist;//起别名 //初始化void InitList(Sqlist *L){ int i; for(i=0;i<MaxSize;i++){ L->data[i]=0; } L->length=0;原创 2021-07-07 15:28:32 · 180 阅读 · 0 评论