严蔚敏的数据结构中*LinkList,为啥不直接用LNode

caoyuan5056 2013-04-14 07:48:06
求解释严蔚敏的链表的定义方法的意义何在。
typedef struct LNode
{
int data;
struct LNode *next;
}LNode,*Linklist;
然后构建功能函数的时候,非常让人晕的写成
Status InitList(LinkList *L)
后面主函数调用的时候是这样的
LinkList L;
InitList(&L);
她这样写我好晕,LinkList L,那L应该是双重指针了。这样有啥用意
为啥他不直接写成这样?
typedef struct LNode
{
int data;
struct LNode *next;
}LNode;
Status InitList(LNode *L)
然后后面调用写成
LNode L;
InitList(&L);
我这样写又好理解,有可以成功实现。但是我知道她那样写是肯定有意图的,希望各位能给我解惑。
...全文
416 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhaokai115 2013-04-14
  • 打赏
  • 举报
回复
看你怎么看待List。 1) 指向第一个Node的指针,即typedef Node* List;好处是节省空间,无论Node中包含的Data有多大,List总是只有一个指针的大小。严老师用的这种。 2) 用一个Node作为List,但只用到里面的Next项,Data的内容忽略不计,Linux常用这种。

33,008

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧