数据结构
IAmLinGe
这个作者很懒,什么都没留下…
展开
-
C++ 构建最小堆、最大堆
C++ 实现最大堆和最小堆的构造过程原创 2020-08-10 08:31:18 · 1968 阅读 · 0 评论 -
数据结构--数组实现线性表
用数组实现线性表数据结构,并编程实现相关操作函数。原创 2018-04-29 16:02:08 · 517 阅读 · 0 评论 -
数据结构--链式线性表
环境:dev c++#include<stdio.h>#include<stdlib.h>typedef struct LNode *List;typedef int ElementType;struct LNode{ ElementType Data; List next;};int Length(List Ptrl);Li...原创 2018-06-16 23:37:40 · 207 阅读 · 0 评论 -
基于顺序搜索的动态分区分配算法模拟内存动态分配--最佳适应算法(best fit,BF)
BF算法、男朋友算法,哈哈 要实现动态分区分配,需要考虑三个方面的问题。分别是数据结构、分区分配算法、分区的分配与回收操作。首数据结构这里我们使用的是空闲分区链,采用双向链表表示空闲分区。 具体实现如下:typedef struct LNode{ int order; //表示内存块的顺序 int start; ...原创 2018-06-27 05:29:32 · 4522 阅读 · 0 评论 -
数据结构--顺序栈
栈:限定仅在表尾进行插入或删除操作的线性表,对栈来说,表尾端为栈顶,表头端为栈底。本文实现了顺序栈的表示和相关函数操作,以及一些验证性代码。#include<stdio.h>#include<stdlib.h>#include<windows.h>#define STACK_INIT_SIZE 100#define STACKINCREME...原创 2018-07-11 01:27:00 · 229 阅读 · 0 评论 -
栈的应用--数制转换
十进制N和其他d进制 N=(N div d)Xd+N mod d (其中:div为整除运算,mod为求余运算)void conversion(){ SqStack S; int N; SElemType e; Init_Stack(S); scanf("%d",&N); while(N){ Push(S,N%8);...原创 2018-07-12 00:10:13 · 383 阅读 · 0 评论 -
栈的应用--括号匹配的检验
算法中设置一个栈,每次读入一个括号,若是右括号,则或者与置于栈顶的括号匹配,或者是不合法的情况,若是左括号,则入栈。若算法结束,栈是空的,则括号合法。 括号匹配函数Status bracket_match(){ SElemType brackets[100]; int i; SElemType e; SqStack S; Init_Stack(S...原创 2018-07-12 01:09:58 · 902 阅读 · 0 评论 -
栈的应用--汉诺塔
#include<stdio.h>void move(char x,int n,char y){ printf("%d号盘 %c柱 ---> %c柱\n",n,x,y);}void hanoi(int n,char x,char y,char z){ if(n==1){ move(x,1,z); } else{ ...原创 2018-07-15 23:53:35 · 222 阅读 · 0 评论