链表

2022年第一篇博客!!!

说来惭愧,学习OI已经两年半了(至少是快两年半了),我竟然还不会写链表。大无语事件。

何为链表?链表是一种可以做到 \(O(1)\) 插入却要 \(O(N)\) 查询的……基本数据结构。然后要用到各种各样奇怪的东西,比如指针(之前我写的所有代码都是数组模拟指针,直到今天我才学会如何使用指针……)

直接上代码。以下代码可以支持插入(直接插到最后面)和遍历。

struct node{int data;node *next;};
node *head=NULL;
void insert(int wh){
	node *newone=new node;
	newone->data=wh;
	newone->next=head;
	head=newone;
}
void find(){
	for(node *i=head;i!=NULL;i=i->next)printf("%d ",i->data);
	printf("\n");
}

操作(简写过的):i(1);i(2);f();i(3);f();
输出:

2 1
3 2 1
posted @ 2022-01-01 16:26  Feyn618  阅读(26)  评论(0编辑  收藏  举报