21xrx.com
2025-03-30 16:09:29 Sunday
文章检索 我的文章 写文章
C++头插法代码示例
2023-07-05 02:41:59 深夜i     7     0
C++ 头插法 代码示例

C++ 是一种高级编程语言,对于许多程序员来说,使用 C++ 编写程序是非常方便的。在 C++ 中,有很多种常用的算法和方法可以用来实现各种不同的任务,其中头插法是一种非常重要的算法之一。

头插法通常用于链表的插入操作中。当我们想要在链表的头部插入一个新元素时,就可以使用头插法。以下是头插法的代码示例:

#include<iostream>
using namespace std;
// 定义一个链表节点结构体
struct ListNode{
  int val; // 节点的值
  ListNode* next; // 下一个节点
  ListNode(int x): val(x), next(NULL){}
};
// 定义一个头插法函数,用于在链表头部插入一个节点
ListNode* headInsert(ListNode* head, int x){
  ListNode* node = new ListNode(x); // 创建新节点
  node->next = head; // 将新节点插入到头部
  head = node; // 更新头节点
  return head;
}
int main(){
  ListNode* head = NULL; // 定义链表头节点
  // 在链表头部插入4个节点
  head = headInsert(head, 1);
  head = headInsert(head, 2);
  head = headInsert(head, 3);
  head = headInsert(head, 4);
  // 打印链表
  ListNode* current = head;
  while(current != NULL)
    cout<<current->val<<" ";
    current = current->next;
  
  return 0;
}

在上面的代码中,我们定义了一个链表节点结构体 `ListNode`,包含两个成员变量 `val` 和 `next`,分别表示节点的值和下一个节点的指针。然后我们定义了一个头插法函数 `headInsert`,用于在链表头部插入一个新节点。在主函数中,我们使用 `headInsert` 函数依次插入了 4 个节点,最后输出整个链表的值。

头插法是一种非常简单、实用的算法,可以方便地实现链表的插入、删除、反转等操作。无论是在数据结构还是算法中,头插法都非常常见。掌握头插法的实现方法,对于提高程序员的编程水平也有很大的帮助。

  
  

评论区