• 静态链表的创建


    typeDefine.h 头文件

    #define MAXSIZE 100

    typedef struct {

    int data;
    int cur;

    }component,SLinkList[MAXSIZE];//SLinkList类型为1000长度的数组


    //初始化静态链表
    void InitSpace_SL(SLinkList S);
    //在静态链表中查找元素
    int LocateElem_SL(SLinkList S, int e);
    //输出静态链表中的所有的元素
    void outPutElem_SL(SLinkList S);
    //向静态链表中的第i元素插入元素
    void InserrElem_SL(SLinkList S,int i);
    //在静态链表中插入元素
    void DelElem_SL(SLinkList S, int i);

    realize.c

    #include "stdio.h"
    #include "stdlib.h"
    #include "typeDefine.h"

    //初始化静态链表
    void InitSpace_SL(SLinkList S) {

    int i = 0;
    for (i ;i < 10; i++)
    {
    S[i].cur = i + 1;//i等于0时为头结点,
    S[i].data = i;
    }
    S[i].data = i;
    S[i].cur = 0;//cur为零时为链表的结尾
    }

    //在静态线性表中查找第一个值为e的元素
    int LocateElem_SL(SLinkList S, int e) {
    int i = S[0].cur;
    while (i&&e!=S[i].data)
    {
    i = S[i].cur;

    }
    return i;
    }

    //输出所有元素
    void outPutElem_SL(SLinkList S) {

    int i = S[0].cur;

    while (i)
    {
    printf("元素的值为%d ",S[i].data);
    i = S[i].cur;

    }

    }
    //在第i个位置插入元素
    void InserrElem_SL(SLinkList S, int i) {
    int j = 0;
    int k = 0;
    while (j<i-1)
    {
    k=S[k].cur;
    j++;
    }
    S[k].cur = 11;
    S[11].cur = k + 1;
    S[11].data = 11;
    }

    //删除第i个位置的元素
    void DelElem_SL(SLinkList S,int i) {

    int j = 0;
    int k = 0;
    while (j<i - 1)
    {
    k = S[k].cur;
    j++;
    }
    //删除元素并没有释放数组的空间(需要释放空间)
    S[k].cur = S[S[k].cur].cur;

    }

     staticLinkList.c

    #include "stdio.h"
    #include "stdlib.h"
    #include "typeDefine.h"


    void main() {

    SLinkList L;//int L[100]的数组 L为数组的首地址
    //初始化静态链表
    InitSpace_SL(L);
    //在指定位置插入元素
    InserrElem_SL(L,2);
    //删除指定位置的元素
    DelElem_SL(L,2);
    //输出链表中所有元素
    outPutElem_SL(L);


    }

  • 相关阅读:
    跨域通信
    Http协议-报文
    从快递公司作业模式看网络通信
    xx.exe 中的 0x7c92e4df 处最可能的异常: 0xC0000008: An invalid handle was specified
    [wp8游戏] cocos2d-x v2.2 + VS2013 环境搭建
    wp加载本地HTML(附带图片,CSS,JS)
    谈谈.NET程序集(一)
    [读书心得] .NET中 类型,对象,线程栈,托管堆在运行时的关系
    矩估计与最大似然估计
    WP8开发札记(二)让程序支持锁屏运行
  • 原文地址:https://www.cnblogs.com/paulversion/p/7569110.html
Copyright © 2020-2023  润新知