数据结构
Serendipity_00
这个作者很懒,什么都没留下…
展开
-
顺序栈和链栈的实现
栈:操作受限的线性表 栈仅在表尾进行插入或删除操作的线性表,表尾:栈顶(top),表头端:栈底 后进先出 void DestroyStack(SeqStack *ps) { assert(ps != NULL); free(ps->base); ps->base = NULL; ps->top = NULL; ps->stacksize = 0; } void ClearStack(SeqStack *ps) { assert(ps != NULL); ps-原创 2021-11-05 20:30:10 · 136 阅读 · 0 评论 -
单链表的逆置
单链表的逆置实现方法 三指针实现 由三个指针 pre = NULL , s = NULL , p = head->next; 第二步:s = p; 第三步:p向后移动 p = p->next; 第四步:s->next = pre; s->next = NULL; 第五步:pre = s; 总体循环移动实现过程:while(p != NULL) 代码实现: typedef int ElemType; typedef struct ListNode { Elemtype d原创 2021-10-24 16:54:36 · 234 阅读 · 0 评论 -
顺序表基本操作
顺序表基本操作 顺序表特点:在逻辑上是连续的,在物理空间上也是连续的;在顺序表中存储数据元素,必须从空间的首位置开始存储,连续存放,不能有空的空间。 结构的声明: typedef int Datatype typedef struct SqList { Datatype* data//指向存储空间的指针 int length//存储的元素个数 int Listsize//空间的大小 }SqList; 方法的声明 bool InitSqList(SqList *sq,int init_size)原创 2021-04-12 14:52:31 · 147 阅读 · 0 评论