• 【数据结构】静态链表的实现(C语言描述)

    #include <stdio.h>
    #include "stdlib.h"
    
    
    #define OK 1
    #define ERROR 0
    #define TRUE 1
    #define FALSE 0
    
    #define MAXSIZE 1000    // 定义线性表最大容量
    
    typedef int Status;
    typedef int ElemType;
    
    
    // 定义静态链表的存储结构
    typedef struct
    {
        ElemType  data;     // 数据域
        int       curr;     // 存放下一个节点在数组中的下标
    } Node;
    
    // 定义StaticLinkList
    typedef Node StaticLinkList[MAXSIZE] ;
    
    // 先初始化一个备用的静态表(其实是数组)
    // L[0].curr = 1, L[1].curr = 2, L[2].curr = 3 ...
    Status InitList(StaticLinkList L){
    
        for(int i=0; i< MAXSIZE; i++){
            L[i].curr = i+1;
        }
        // 当前静态链表为空表,最后一个元素所指向的下一个元素的下标为0(也就是指向一个元素)
        L[MAXSIZE-1].curr = 0;
    
        return  OK;
    }
    
    // 获取空闲元素的下标 并将下标存放在L[0].curr 中
    int GetBlankIndex(StaticLinkList L){
        // L[0].curr 始终存的是空闲元素的下标
        int blankIndex = L[0].curr;
        if (L[0].curr) L[0].curr = L[blankIndex].curr;
    
        return  blankIndex;
    }
    
    
    Status ListInsert(StaticLinkList L, ElemType e){
    
        int blankIndex = GetBlankIndex(L);
    
        L[blankIndex].data = e;
    
        return OK;
    }
    
    
    // 删除第i个元素
    Status ListDelete(StaticLinkList L, int i){
    
        return  OK;
    }
    
    
    void Visit(StaticLinkList L){
        int blankIndex = GetBlankIndex(L);
    
        for (int i = 1; i < blankIndex; ++i) {
            printf("%d ",L[i].data);
        }
        printf("\n");
    }
    
    
    int main() {
        StaticLinkList L;
        InitList(L);
    
        for(int i=1; i<=5; i++){
            ListInsert(L, i);
        }
    
        Visit(L);
    
    
    
    }
    相关文章
    相关标签/搜索
    四肖中特期期準王中王资料大全枓大全app下载-王中王资料大全枓大全开奖手机版 沈丘县| 安新县| 鸡西市| 惠东县| 龙陵县| 大厂| 子长县| 黄梅县| 太湖县| 贵德县| 巴林左旗| 呼玛县| 农安县| 定南县| 会宁县| 金山区| 连云港市| 晋城| 尉犁县| 成安县| 平阳县| 论坛| 东平县| 酉阳| 和静县| 阳谷县| 新营市| 衢州市| 岳阳市| 和平区| 读书| 夹江县| 海淀区| 阿巴嘎旗| 福贡县| 商丘市| 弋阳县| 石柱| 南靖县| 西乡县| 徐汇区| 道孚县| 丰城市| 昆明市| 乐亭县| 达拉特旗| 壶关县| 万荣县| 科尔| 新郑市| 杭州市| 呼伦贝尔市| 方山县| 合川市| 新巴尔虎左旗| 毕节市| 河北省| 涪陵区| 邮箱| 墨玉县| 万全县| 榆社县| 平乡县| 浑源县| 隆化县| 安西县| 河源市| 枣强县| 东乌珠穆沁旗| 泗洪县| 修文县| 陵水| 伊金霍洛旗| 琼结县| 阳城县| 昌乐县| 贵州省| 玉屏| 克拉玛依市| 铜山县| 武威市| 吉首市| 南涧| 杭州市| 贺兰县| 高青县| 杂多县| 涡阳县| 神农架林区| 乳源| 拉萨市| 报价| 申扎县| 砚山县| 马尔康县| 息烽县| 霍山县| 峨边| 东丰县| 慈利县| 高台县| 太康县| 南宫市| 潜山县| 会昌县| 孟州市| 鹤峰县| 九江县| 东源县| 西畴县| 郯城县| 延寿县| 新晃| 厦门市| 治多县| 新昌县| 苍溪县| 西乌珠穆沁旗| 清镇市| 林西县| 兴化市| 五大连池市| 新密市| 兰考县| 上杭县| 阜平县| 宜良县| 顺昌县| 千阳县| 巨野县| 镇原县| 满洲里市| 柘城县| 堆龙德庆县| 东乡县| 略阳县| 阜康市| 辽中县| 尖扎县| 雷波县| 无棣县| 侯马市| 千阳县| 新郑市| 务川| 万安县| 彭阳县| 东明县| 乌恰县| 略阳县| 苏尼特左旗| 菏泽市| 新宁县| 柘城县| 贞丰县| 仲巴县| 沐川县| 黎川县| 四平市| 怀柔区| 茂名市| 宿松县| 临夏县| 赣州市| 大姚县| 南开区| 调兵山市| 营口市| 商水县| 铜梁县| 绿春县| 盐津县| 丰都县| 武陟县| 枞阳县| 本溪市| 宕昌县| 六枝特区| 怀宁县| 波密县| 七台河市| 长葛市| 宜宾市| 雷山县| 大荔县| 玉门市| 息烽县| 峡江县| 离岛区| 武宣县| 习水县| 乌审旗| 元阳县| 东台市| 遵义县| 宜城市| 且末县| 镇巴县| 绥中县| 闸北区| 泰来县| 怀安县| 离岛区| 彭阳县| 松潘县| 济源市| 涞水县| 江永县| 棋牌| 铁岭市| 三台县| 句容市| 团风县| 鲁甸县| 达尔| 金秀| 镶黄旗| 东乌珠穆沁旗| 扶沟县| 景宁| 勐海县| 兴安县| 齐河县| 繁峙县| 武宣县| 图木舒克市| 长沙市| 固原市| 利津县| 从江县| 原平市| 醴陵市| 汝城县| 泸溪县| 老河口市| 日照市| 兴化市| 文安县| 武威市| 肇庆市| 永济市| 稻城县| 安新县| 衡阳县| 吴旗县| 沂源县| 遵义市| 景东| 玉田县| 托克托县| 鄂尔多斯市| 惠州市| 莱芜市| 嘉义市| 铜鼓县| 汾西县| 湖南省| 山阴县| 蓬溪县| 读书| 突泉县| 灌云县| 长宁县| 兴仁县| 玉林市| 永新县| 广元市| 潼南县| 英德市| 宣恩县| 景德镇市| 海安县| 鄂温| 新乡市| 黄大仙区| 佛冈县| 尖扎县| 东乌珠穆沁旗| 马尔康县| 吴桥县| 德化县| 林周县| 三河市| 华阴市| 盐亭县| 嘉鱼县| 汽车| 安陆市| 龙胜| 海林市| 德江县| 西丰县| 漳平市| 商城县| 济南市| 会昌县| 安溪县| 全椒县| 阿拉善左旗| 芜湖市| 高尔夫| 略阳县| 时尚| 镇平县| 岫岩| 枝江市| 霸州市| 三门峡市| 彰化县| 平泉县| 宁陵县| 九龙坡区| 屏东县| 尉犁县| 方山县| 庄浪县| 连平县| 黄龙县| 湘潭市| 二手房| 淅川县| 丹东市| 合川市| 大名县| 金山区| 日照市| 古蔺县| 宣武区| http://3g.bo2020nears.fun http://3g.bo2020counters.fun http://3g.yqo6j5rl4v.fun http://3g.yqo0j3rl1v.fun http://3g.bo2020checks.fun http://3g.gz1980workc.fun http://3g.gz1980discussc.fun http://3g.yqo6j3rl1v.fun http://3g.bo2020generates.fun http://3g.bo2020actions.fun http://3g.gz1980bulkc.fun http://3g.bo2020types.fun http://3g.gz1980officerc.fun http://3g.yqo7j1rl2v.fun http://3g.bo2020contains.fun http://3g.gz1980conditionc.fun http://3g.yqo3j1rl6v.fun http://3g.gz1980secondc.fun