c++头插法反转链表
时间: 2023-10-18 18:29:48 浏览: 116
c 头插法反转链表是一种将链表进行倒置的方法。具体实现可以参考以下代码:
```c
link *reverse(link *head) {
link *new_head = NULL;
link *temp = NULL;
if (head == NULL || head->next == NULL) {
return head;
}
while (head != NULL) {
temp = head; //将 temp 从 head 中摘除
head = head->next; //将 temp 插入到 new_head 的头部
temp->next = new_head;
new_head = temp;
}
return new_head;
}
```
这段代码使用了头插法的思路实现链表的反转。通过遍历原链表,每次将头部的节点摘下并插入到新链表的头部,最终得到了一个反转后的链表。你可以将原链表的头节点作为参数传入该函数,函数将返回反转后的链表的头节点。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [字节跳动反转链表--头插法c++](https://blog.csdn.net/weixin_44026260/article/details/108450549)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *2* *3* [反转链表的4种方法c++实现](https://blog.csdn.net/wodazhouyi/article/details/119654297)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文