关于二级指针的认识

在链表操作中经常会遇到链表头的问题,如下图:

wKioL1SURHLg_kTMAACuN3M7KjQ240.jpg

在这个链表插入函数中,如果链表中第一个元素就小于newValue,则需要更新头指针。当然可以把头指针定义为全局变量,但这并不是最优解,所以我们需要在函数中更新头指针的值,如下图:

wKiom1SUQ93zL2VeAADXewUatf4050.jpg

当然Link *head  这里的head就是struct ** Node二级指针,在这里只是实现了更新头指针的功能,其实二级指针还有更妙的用法:链表中每一个节点都有指向它的指针,指向头节点的是头指针,指向其他节点的是它前一个节点的链,这样只需要修改指向每个节点的链即可:

wKiom1SUS7zCXLeJAACqMW70xLg330.jpg

 

你可能感兴趣的:(二级指针)