origem
A aparência da lista vinculada é porque em muitos cenários de negócios, é necessárioAdicionar e excluir operações, Se você usar uma matriz, qualquer causaMovimento de dados em massa, Ou causar muitosDesperdício de espaço de armazenamento. Assim, a lista vinculada surgiu.
A lista vinculada é uma espécie de lista linear, é como uma cadeia, cada nó incluiDuas partes: Um é armazenar elementos de dadosCampo de dados(Pode armazenar vários tipos diferentes de dados), o outro é armazenar o endereço do próximo nóCampo de ponteiro. Muito fácil de adicionar e excluir operações, é claro, por causa da estrutura da cadeia, ele cria uma lista geral vinculadaNão temPasse o subscrito do array diretamente como um arrayAcesso aleatórioHabilidade.
definição
typedef struct Node{
int data;
struct Node *next;
}LNode, *LinkList;
int main()
{
LNode point1 = {
1,NULL};
}
Comparação de lista ligada e matriz
Array:
int i;
int array[] = {
1,2,3};
for(i=0;i<sizeof(array)/sizeof(array[0]);i++){
printf("array[%d]=%d\n",i,array[i]);
}
:Wq
Lista ligada
LNode point1 = {
1,NULL};
LNode point2 = {
2,NULL};
LNode point3 = {
3,NULL};
point1.next = &point2;
point2.next = &point3;
printf("p1data=%d,p2data=%d,p3data=%d\n",point1.data,point1.next->data,point1.next->next->data);