Compartilhar aprendizagem estrutura de dados

Compartilhar aprendizagem estrutura de dados

Eu sou um calouro, recentemente estruturas de dados de auto-estudo, escrever seu próprio blog supervisionado os resultados da aprendizagem, por isso, com o coração pesado que eu comecei a escrever blog. Apenas começou não muito bom em usar este compilador, por favor antecessores pesos pesados também incluem um monte, um monte de orientação.
Começamos a participação da lista, em primeiro lugar, é para criar listas.

1. Crie uma lista de

Homem de poucas palavras disse antes do código.

struct list//链表的结构体
{
	int num;
	struct list*next;
};
struct list*create(int n)//这里的n用来存储链表的长度;
{
	int i;
	struct list*p;
	struct list*head;
	p=head=(struct list*)malloc(sizeof(struct list));//首先创键head节点,p节点。
	for(i=0;i<n;i++)//循环用来输入数据
	{
		struct list*s=(struct list*)malloc(sizeof(struct list));/*一个临时节点s*/
		s->num=i;//我们这里为了方便,直接将i的值赋值给节点,在实际的创建中,可以在这里用scanf输入数据
		p->next=s;//将p连接上s
		p=s;//然后p再到s上
	}
	p->next=NULL;//链表创建结束,将最后一个节点的next设为NULL
	head=head->next;//因为我们的head节点没有值,并不是头,我们要把head指向头,也就是head下一个;
	return head;//返回头指针
}

O seguinte código de teste para o

#include<stdio.h>
#include<stdlib.h>
struct Node
{
	int data;
	struct Node *next; 
};
 struct Node *create(int n)
{
	int i;
	struct Node* head;
	struct Node*p;
	p=head=(struct Node *)malloc(sizeof(struct Node));
	for(i=0;i<n;i++)
	{
		struct Node*s=(struct Node *)malloc(sizeof(struct Node));
		s->data=i;
		p->next=s;
		p=s;
	}//
	
	p->next=NULL;
	head=head->next;
	printf("ok");
	return head;
}//
 int main()
 {
	 int n;
	 struct Node *head;
	 printf("输入节点的个数:");
	 scanf("%d",&n);
	 head=create(n);
	 system("pause");
	 return 0;
 }

A fim de criar uma função para detectar se nós finalmente criar o corpo da função acrescentou um printf ( "ok"); declarações para determinar se a função é executada com sucesso

Lançou dois artigos originais · ganhou elogios 2 · visualizações 30

Acho que você gosta

Origin blog.csdn.net/qq_45806146/article/details/104174238
Recomendado
Clasificación