• 数据结构常用头文件之类型定义


    header.h

    复制代码
    // 顺序表的结构定义
    #define Maxsize 100
    //const int Maxsize = 100; // 预先定义一个足够大的常数
    
    typedef struct
    {
        int data[Maxsize]; // 存放数组的数组
        int length; // 顺序表的实际长度
    }SeqList; // 顺序表类型名为SeqList
    
    // SeqList L 定义L为一个顺序表
    复制代码

    Linear.h

    复制代码
    // 单链表的类型定义
    typedef struct node
    {
        int data; // 数据域
        struct node *next; // 指针域
    }Node, *LinkList;
    
    // 双向循环链表的类型定义
    struct dbnode
    {
        int data;
        struct dbnode *prior, *next;
    }
    typedef struct dbnode *dbpointer;
    typedef dbpointer DLinkList;
    复制代码

    Seqstack.h

    复制代码
    #define maxsize 6
    //const int maxsize = 6;
    
    // 顺序栈
    
    typedef struct seqstack
    {
        int data[maxsize];
        int top; // 标志栈顶位置的变量
    }SeqStk;
    复制代码

    Lkstack.h

    复制代码
    // 链栈的定义
    typedef struct node
    {
        int data;
        struct node *next;
    }LkStk;
    复制代码

    SeqQue.h

    复制代码
    // 顺序队列类型(普通队列和循环队列类型定义都一样,都如下:)

    #define maxsize 20
    //const int maxsize = 20;

    typedef struct seqque
    {
      int data[maxsize];
      int front, rear;
    }SeqQue;

    typedef struct cycque
    {
      int data[maxsize];
      int front, rear;
    }CycQue;

    复制代码

    LkQueue.h

    复制代码
    // 链队列类型定义
    typedef struct LinkQueueNode
    {
        int data;
        struct LinkQueueNode *next;
    }LkQueNode
    typedef struct LkQueue
    {
        LkQueNode *front, *rear;
    }LkQue;
    复制代码

    BinTree.h

    复制代码
    // 二叉链表的类型定义
    typedef struct btnode
    {
        int data;
        struct btnode *lchild, *rchild; // 指向左右孩子的指针
    }*BinTree;
    
    // 三叉链表的类型定义
    typedef struct ttnode
    {
        int data;
        struct ttnode *lchild, *parent, *rchild;
    }*TBinTree;
    复制代码

    Graph.h

    复制代码
    #define vnum 20
    
    // 邻接矩阵
    typedef struct gp
    {
        int vexs[vnum]; // 顶点信息
        int arcs[vnum][vnum]; // 邻接矩阵
        int vexnum, arcnum; // 顶点数,边数
    }Graph;
    复制代码

    Graphlk.h

    复制代码
    #define vnum 20
    
    // 邻接表的类型定义
    
    // 表结点
    typedef struct arcnode
    {
        int adjvex; // 下一条边的顶点编号
        int weight; // 权值
        struct arcnode *nextarc;
    }ArcNode;
    
    // 表头结点
    typedef struct vexnode
    {
        int vextex; // 顶点编号
        ArcNode *firstarc; // 指向第一条边的指针
    }AdjList[vnum];
    
    typedef struct gp
    {
        AdjList adjlist;
        int vexnum, arcnum; // 顶点和边数
    }Graph;
    复制代码
  • 相关阅读:
    idea启动tomcat服务失败
    500错误 javax.servlet.ServletException: javax.naming.NameNotFoundException: Name [happy] is not bound in this Context. Unable to find [happy].
    idea启动tomcat服务失败 SEVERE [RMI TCP Connection(3)-127.0.0.1] org.apache.catalina.core.ContainerBase.addChildInternal ContainerBase.addChild:
    浅谈注解式开发
    PTA编程总结3
    PTA编程总结2
    PTA编程总结1
    秋季学期学习总结
    Git简明教程
    Linux常用软件安装
  • 原文地址:https://www.cnblogs.com/hongdoudou/p/12490985.html
Copyright © 2020-2023  润新知