不二如是 发表于 2017-9-24 09:27:35

已有 18 人购买  本主题需向作者支付 2 鱼币 才能浏览 购买主题

圣狄雅哥 发表于 2017-11-29 21:03:38

Status GetMidNode(LinkList L, ElemType *e)   // 这里只能用(*e),且不能拿这个函数直接返回e的值,原因不明
{
    LinkList search, mid;
    mid = search = L;

    while (search->next != NULL)
    {
      //search移动的速度是 mid 的2倍
      if (search->next->next != NULL)
      {
            search = search->next->next;
            mid = mid->next;
      }
      else
      {
            search = search->next;
      }
    }

    *e = mid->data;

    return OK;
}

。。。。。。

Status InitList(LinkList *L)    // 这里只能用(*L),原因未知;其他函数可以用L
{
    *L=(LinkList)malloc(sizeof(Node)); /* 产生头结点,并使L指向此头结点 */

    if(!(*L)) /* 存储分配失败 */
    {
      return ERROR;
    }

    (*L)->next=NULL; /* 指针域为空 */

    return OK;
}
原程序中的这两个函数我标注原因不明的地方有问题,望老湿指点一二

沐云 发表于 2019-12-18 00:01:56

哈哈哈

shatanzongcai 发表于 2021-7-14 16:11:44

请问楼主如果数据的个数如果是偶数个的话,中间结点为什么还是一个数据而不是两个数据呢?
页: [1]
查看完整版本: ★ 第十六讲 线性表11 | 【实例改革】★