数据结构
为了考研,奥里给
Jacobshash
一个努力想变强却没有变强的渣渣程序员
展开
-
链栈
#include <iostream>#include<stdlib.h>using namespace std;typedef struct node { int data; struct node *next;} Node;typedef struct stack { Node *top; /**书本写法是:加一个bottom,个人感觉没什么用,反而加一个count用于表示节点数会更好*/ int count;} LinkStack原创 2020-11-06 19:28:49 · 279 阅读 · 0 评论 -
顺序队列
#include <stdio.h>#include <windows.h>//定义一个顺序队列#define QUEUESIZE 100typedef struct Squeue { int queue[QUEUESIZE]; int front; int rear;} SeQueue;//顺序队列的初始化void InitQueue(SeQueue* S) { S->front = S->rear = 0;}//判断队列是否为空bool I原创 2020-11-05 18:09:14 · 292 阅读 · 0 评论 -
顺序栈
#include<stdio.h>#define MaxSize 20typedef struct SqueueStack { int data[MaxSize]; int top;} SqStack;//初始化栈void initSqStack(SqStack &S) { S.top=-1;}//判断栈空bool StackEmpty(SqStack S) { if(S.top==-1) { return true; } else { return原创 2020-11-04 22:59:35 · 163 阅读 · 0 评论 -
单链表增删改查(有头指针)
#include<stdio.h>#include<stdlib.h>typedef struct node { int data; struct node *next;}*LinkList,LNode;//初始化链表bool InitList(LinkList &L) { L = (LNode *)malloc(sizeof(LNode)); if(L==NULL) { return false; } L->next=NULL; retu原创 2020-11-02 20:12:30 · 157 阅读 · 0 评论 -
单链表增删改查(无头指针)
#include<stdio.h>#include<stdlib.h>typedef struct node{ int data; struct node *next;}*LinkList,LNode; //初始化链表 bool InitList(LinkList &L){ L=NULL; return true;}//判断链表是否为空bool isEmpty(LinkList L){ return (L==NULL);} //头插法(按位原创 2020-11-02 01:39:53 · 280 阅读 · 0 评论 -
顺序表增删改查(动态分配版)
顺序表增删改查(动态分配版)#include<stdio.h>#include<stdlib.h>#define InitSize 20typedef struct SqL{ int *data; int length; int MaxSize;}SqList;//初始化顺序表void initList(SqList &L){ L.data=(int *)malloc(InitSize*sizeof(int)); L.length=0; L.M原创 2020-10-31 10:35:39 · 133 阅读 · 0 评论 -
顺序表的静态数组实现增删改查
顺序表的静态数组实现增删改查方法(第一版)#include <stdio.h>#include <stdlib.h>#define MaxSize 100 //最大允许长度 typedef struct SqList{ int data[MaxSize]; int length;}SqL; //初始化void initList(SqList &L){ for(int i=0;i<MaxSize;i++){ L.data[i]=0;原创 2020-10-31 09:11:26 · 295 阅读 · 0 评论