暮婉歌 2015-10-19 11:57 采纳率: 100%
浏览 2384
已采纳

关于单链表的删除算法

typedef int ElemType;
typedef struct Node //结点结构
{
ElemType data;
struct Node *next;
}Node;
typedef struct Node *LinkList;

Status ListDelete(LinkList *L,int i,ElemType *e) //单链表删除
{
int j; LinkList p,q; p = *L; j = 1;
while (p->next && j < i)
{ p = p->next; ++j;}
if (!(p->next) || j > i)
return ERROR;
q = p->next;
p->next = q->next;
*e = q->data; //?????没明白这句作用
free(q);

return OK;
}

就是注释的那句实在想不明白是干嘛用的,求解~~~

  • 写回答

2条回答 默认 最新

  • hello_sec 2015-10-19 12:43
    关注

    注意看你传进去的最后一个参数 ElemType *e 这个明显是传进去的一个指针对吧 传指针进去的话 在结构体里面做的那些操作对参数e是有影响的 那句话的意思明显是为了在删除之前把数值提取出来并传入你的mian函数的

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 求daily translation(DT)偏差订正方法的代码
  • ¥15 js调用html页面需要隐藏某个按钮
  • ¥15 ads仿真结果在圆图上是怎么读数的
  • ¥20 Cotex M3的调试和程序执行方式是什么样的?
  • ¥20 java项目连接sqlserver时报ssl相关错误
  • ¥15 一道python难题3
  • ¥15 牛顿斯科特系数表表示
  • ¥15 arduino 步进电机
  • ¥20 程序进入HardFault_Handler
  • ¥15 关于#python#的问题:自动化测试