数据结构*单链表
单链表定义定义单链表(Singly Linked List)是一种链式存储的数据结构,由一系列节点(Node)组成,每个节点包含两个部分:
数据域(Data):存储数据。
指针域(Next):存储指向下一个节点的地址。
例如:
typedef struct node(){ int id; //数字域 node* p; //指针域}Node;
时间复杂度
数组
查找效率更高,但插入和删除(非尾部)操作较慢。
单链表 插入和删除效率较高(尤其是头部),但查找效率较低。
操作
单链表(Singly Linked List)
数组(Array)
查找
O(n)(需要从头遍历)
O(1)(可通过索引直接访问)
插入
O(1)(直接修改指针)
O(n)(需要移动元素)
删除
O(1)(直接修改指针)
O(n)(需要移动元素)
基本操作初始化Node* initlist(){ Node* head = (Node*)malloc(sizeof(Node)); head->data=0; head->next=NULL; ...