链表在数据结构中是非常常见的一种结构,需要好好理解运用。
链表的最基本的操作可能便是遍历输出了,其代码结构为(包括了链表的创建):
#include <iostream>
#include <stdio.h>
using namespace std;
struct ListNode
{
int m_nValue;
ListNode* m_pNext;
};
ListNode *CreatLink(int n)
{
ListNode *head,*p,*q;
for(int i=0; i<n; i++)
{
p = (ListNode*)malloc(sizeof(ListNode));
scanf("%d",&p->m_nValue);
if(i == 0)
head = p;
else
q->m_pNext = p;
q = p;
p->m_pNext = NULL;
}
return head;
}
void PrintNodeList(ListNode *head)
{
ListNode *p;
p=head;
if(head!=NULL)
while(p!=NULL)
{
printf("\n%d",p->m_nValue);
p=p->m_pNext;
}
}
int main()
{
ListNode *list=CreatLink(3);
PrintNodeList(list);
return 0;
}