21xrx.com
2024-12-22 19:12:15 Sunday
登录
文章检索 我的文章 写文章
C++实现链表的创建
2023-07-04 23:03:21 深夜i     --     --
C++ 链表 创建

链表是一种常见的数据结构,在程序设计中经常被使用。C++是一门功能强大的编程语言,可以很容易地实现链表的创建。下面将介绍如何使用C++来实现链表的创建。

链表由节点组成,每个节点包含一个数据元素和一个指向下一个节点的指针。因此,我们需要先定义一个节点的结构体。以下是一个简单的节点结构体:


struct ListNode {

  int val;

  ListNode *next;

  ListNode(int x) : val(x), next(NULL) {}

};

在上述代码中,我们定义了一个名为ListNode的结构体,并包含两个成员变量:一个int类型的val变量和一个指向下一个节点的指针next。同时,我们还将链表的构造函数写在了结构体的构造函数中。

在定义了链表节点结构体之后,我们就可以开始创建链表了。首先,我们需要定义一个头节点,并将它的next指针置为NULL,表示该链表为空。以下是一个简单的链表创建函数:


ListNode* createLinkedList(vector<int>& nums) {

  ListNode *head = new ListNode(0);

  ListNode *cur = head;

  for (int num : nums) {

    ListNode *node = new ListNode(num);

    cur->next = node;

    cur = cur->next;

  }

  return head->next;

}

在上述代码中,我们传入一个整型数组nums,表示链表中的元素。接着,我们定义了一个头节点,并将头节点的next指针置为NULL。然后,我们遍历整型数组nums,并为每个元素创建一个新的节点,将新节点插入到链表中,并将当前节点指针指向新节点。

最后,我们返回头节点的next指针,即整个链表的第一个节点。以下是一个简单的测试样例:


int main() {

  vector<int> nums = 1;

  ListNode *head = createLinkedList(nums);

  while (head)

    cout << head->val << " ";

    head = head->next;

  

  return 0;

}

在上述代码中,我们首先定义了一个整型数组nums,然后调用了创建链表的函数,将链表头节点指针存入head中。最后,我们遍历整个链表,并输出每个节点的数据元素。

通过上述简单的代码实现,我们可以快速创建出一个链表,并对链表进行遍历操作。实际上,在真实的项目中,链表的操作会比这个例子复杂得多。但是,掌握链表的创建和基本操作,有助于我们更好地理解和使用链表。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复