理解指针画框图比较有效
int * head = NULL;
等效于
int * head;
head = NULL;
分界线
struct student * p1;
struct student * p2;
p2 = p1;
if(p1->next == p2->next)
{
true;
}
指针 结构体的引用注意事项
- 结构体地址引用: 指针进来用->
- 结构体直接引用: 用点点点
// 反转单链表
ListNode * ReverseList(ListNode * pHead)
{
// 如果链表为空或只有一个结点,无需反转,直接返回原链表头指针
if(pHead == NULL || pHead->m_pNext == NULL)
return pHead;
ListNode * pReversedHead = NULL; // 反转后的新链表头指针,初始为NULL
ListNode * pCurrent = pHead;
while(pCurrent != NULL)
{
ListNode * pTemp = pCurrent;
pCurrent = pCurrent->m_pNext;
pTemp->m_pNext = pReversedHead; // 将当前结点摘下,插入新链表的最前端
pReversedHead = pTemp;
}
return pReversedHead;
}
指针与链表操作
本文介绍了使用指针进行结构体引用的方法,并详细解析了如何通过指针来操作链表,包括链表的翻转过程。
206

被折叠的 条评论
为什么被折叠?



