链表是一种常见的数据结构,它由节点组成,每个节点包含数据和指向下一个节点的指针。链表可以用来有效地插入和删除元素,但访问元素的效率相对较低。
下面是一个简单的链表实现示例:
#include 
using namespace std;
// 定义链表节点
struct ListNode {
    int val; // 节点的值
    ListNode* next; // 指向下一个节点的指针
    // 构造函数
    ListNode(int x) : val(x), next(NULL) {}
};
// 遍历链表并打印所有节点的值
void printList(ListNode* head) {
    ListNode* curr = head;
    while (curr != NULL) {
        cout << curr->val << " ";
        curr = curr->next;
    }
    cout << endl;
}
int main() {
    // 创建链表节点
    ListNode* head = new ListNode(1);
    ListNode* second = new ListNode(2);
    ListNode* third = new ListNode(3);
    // 构建链表
    head->next = second;
    second->next = third;
    // 遍历链表并打印
    printList(head);
    // 释放链表内存
    delete head;
    delete second;
    delete third;
    return 0;
}
 
在上面的示例中,我们定义了一个ListNode结构体来表示链表的节点。每个节点包含一个整数值和一个指向下一个节点的指针。我们还定义了printList函数来遍历链表并打印每个节点的值。
在main函数中,我们创建了三个链表节点,并使用指针将它们连接起来,构建了一个简单的链表。然后,我们调用printList函数来打印链表的所有节点的值。最后,我们释放了链表的内存。
希望以上示例能够帮助你理解链表的实现。如果你有任何进一步的问题,请随时提问。
                    上一篇:不理解类型等价性
                
下一篇:不理解Linux命令