• 【数据结构】静态链表的实现(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);
    
    
    
    }
    相关文章
    相关标签/搜索
    最准网站特马资料四肖期期准一2020特马开奖结果查询三肖中特期期准免费118图库 宁安市| 济南市| 瓮安县| 新邵县| 岳普湖县| 安吉县| 荔波县| 那坡县| 新干县| 兴化市| 凤庆县| 辽阳市| 沙雅县| 汶上县| 西吉县| 西华县| 闸北区| 隆安县| 宜兰市| 朔州市| 乌拉特前旗| 芜湖县| 桦南县| 莫力| 茶陵县| 东丰县| 宜川县| 越西县| 富裕县| 河源市| 中西区| 宁武县| 平湖市| 孝感市| 自贡市| 禹城市| 浦城县| 溧水县| 大同市| 思茅市| 泗洪县| 武威市| 郓城县| 察哈| 山阳县| 辽源市| 大理市| 仙游县| 新野县| 宜川县| 略阳县| 永德县| 佛山市| 靖西县| 招远市| 杭锦旗| 平塘县| 新源县| 新田县| 彰化县| 温州市| 内黄县| 布拖县| 同心县| 怀安县| 嘉定区| 铁岭县| 广宗县| 汽车| 龙南县| 鞍山市| 泊头市| 揭阳市| 无极县| 子洲县| 天台县| 团风县| 安宁市| 工布江达县| 济阳县| 巧家县| 沙坪坝区| 大英县| 乡城县| 乳山市| 柘城县| 连城县| 陇西县| 铜鼓县| 吉木乃县| 钟祥市| 中宁县| 上高县| 隆安县| 阳高县| 交城县| 石柱| 邵阳市| 新乡县| 陈巴尔虎旗| 海安县| 宁德市| 明水县| 阳高县| 册亨县| 翁牛特旗| 绵竹市| 阜新| 米林县| 伊宁市| 台中市| 葵青区| 浪卡子县| 北流市| 祁东县| 石台县| 喀喇沁旗| 兴宁市| 兰西县| 苍溪县| 娱乐| 运城市| 昌宁县| 吉木萨尔县| 上虞市| 栾川县| 绥宁县| 郧西县| 开封市| 通河县| 香港| 上思县| 天台县| 白河县| 嘉禾县| 晋城| 东乌珠穆沁旗| 合江县| 修文县| 长武县| 石柱| 麟游县| 扶绥县| 云梦县| 胶南市| 瓦房店市| 博野县| 江门市| 大连市| 洛扎县| 洞头县| 涪陵区| 韩城市| 偏关县| 桐柏县| 三亚市| 嘉义县| 太保市| 织金县| 黄梅县| 孟州市| 吉林省| 开远市| 闽侯县| 贺兰县| 海林市| 聂拉木县| 繁昌县| 东兴市| 石林| 东台市| 锦州市| 玉林市| 北海市| 江口县| 美姑县| 梁平县| 浠水县| 南丰县| 塘沽区| 平乐县| 阿城市| 潜江市| 尖扎县| 青阳县| 沅陵县| 长寿区| 玉溪市| 安乡县| 莲花县| 溧水县| 承德县| 嵩明县| 辉南县| 策勒县| 蓝山县| 阿拉尔市| 龙游县| 康马县| 高邑县| 汕头市| 疏勒县| 喀喇| 长寿区| 大渡口区| 广东省| 商水县| 左权县| 渭南市| 盱眙县| 六盘水市| 集安市| 洛南县| 登封市| 万源市| 宽城| 屏东市| 陈巴尔虎旗| 谢通门县| 昔阳县| 乡宁县| 乐都县| 惠水县| 咸宁市| 青冈县| 申扎县| 措勤县| 海阳市| 平安县| 禹州市| 西藏| 富蕴县| 溧水县| 营口市| 齐齐哈尔市| 鄱阳县| 大余县| 天津市| 铁岭县| 柏乡县| 贺兰县| 开平市| 汝城县| 随州市| 武邑县| 蕉岭县| 松桃| 唐山市| 临海市| 新郑市| 清新县| 平塘县| 紫金县| 枝江市| 安庆市| 新晃| 莆田市| 离岛区| 肇庆市| 井陉县| 武宁县| 思茅市| 双辽市| 东明县| 九寨沟县| 察隅县| 南木林县| 察隅县| 朝阳区| 太仆寺旗| 张家口市| 漾濞| 崇仁县| 静海县| 灵宝市| 安康市| 宁武县| 嘉鱼县| 达日县| 富顺县| 宁晋县| 武义县| 肥城市| 易门县| 册亨县| 宾川县| 房产| 仁怀市| 长葛市| 鸡西市| 新源县| 蒙自县| 额济纳旗| 城口县| 永嘉县| 开阳县| 集贤县| 浦北县| 犍为县| 泸州市| 上饶县| 滁州市| 集贤县| 凤阳县| 通道| 邹城市| 西丰县| 米脂县| 奉化市| 开阳县| 新竹县| 屏南县| 宜城市| 永康市| 峡江县| 宁乡县| 微山县| 方山县| 沿河| 永寿县| 山东省| 马公市| 潮安县| 闻喜县| 丘北县| 响水县| 清水县| 临西县| http://3g.gz1980screenc.fun http://3g.bo2020lodges.fun http://3g.yqo4j8rl9v.fun http://3g.jvz0j6r2o.fun http://3g.bo2020lows.fun http://3g.gz1980zarc.fun http://3g.yqo6j7rl6v.fun http://3g.bo2020zails.fun http://3g.gz1980zanc.fun http://3g.yqo6j4rl3v.fun http://3g.bo2020forts.fun http://3g.gz1980hopc.fun http://3g.jvz1j4r4o.fun http://3g.gz1980operatec.fun http://3g.yqo9j1rl9v.fun http://3g.bo2020lights.fun http://3g.gz1980resuzec.fun http://3g.yqo7j6rl3v.fun