鱼C论坛

 找回密码
 立即注册
查看: 1983|回复: 2

新手求帮忙

[复制链接]
发表于 2019-2-19 16:03:19 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
Status ListInsert_Sq(SqList &L, int i, ElemType e)
{
        if(i < 1 || i > L.length + 1)
                return ERROR;
        if(L.length >= L.listsize)
        {
                newbase = (ElemType *)realloc(L.elem,(L.listsize + LISTTINCREMENT) * sizeof (ElemType));
                if(!newbase)exit(OVERFLOW);
                L.elem = newbase;
                L.listsize += LISTINCREMENT;
        }
        q = &(L.elem[i - 1]);
        for(p = &(L.elem[L.length - 1]); p >= q; --p)
        *(p + 1) = *p;
        *q = e;
        ++L.length;
        return OK;
}


Status ListInsert(SqList *L, int i, ElemType e)
{
        int k;
        if(L->length == MAXSIZE)
        {
                return ERROR;
        }
        if( i < 1 || i > L->ength + 1)
        {
                return ERROR;
        }
        if(i <= L->length)
        {
                for(k = L->length - 1; k >= i-1; k--)
                {
                        L->data[k + 1] = L->data[k];
                }
        }
        L->data[i - 1] = e;
        L->length++;

        return OK;
}

两个都是链表插入的程序,上面的是严奶奶书上的,下面的是小甲鱼老师的;

为什么在程序第一行严奶奶用的是  SqList &L  ,而小甲鱼老师用的是  SqList *L?

为什么  i > L.length + 1  而不是  L.length?

为什么在后面for循环是 L->length - 1?



想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2019-2-19 16:17:51 | 显示全部楼层
各位大佬解下惑
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-2-22 13:44:49 | 显示全部楼层

回帖奖励 +10 鱼币

路过。。。。。
好复杂
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-25 21:53

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表