码迷,mamicode.com
首页 > 其他好文 > 详细

单向链表的建立,插入,删除(复习一下)

时间:2015-07-01 11:33:17      阅读:98      评论:0      收藏:0      [点我收藏+]

标签:

#include <iostream>
#include <cstdio>
#include <cstdlib>
using namespace std;
typedef int datetype;
typedef struct  node
{
    datetype date;
    struct node* next;
}listnode,*linklist;
linklist creatlist(int num)//创建链表
{
    int i;
    linklist tail=NULL,temp=NULL,head=NULL;
    for(i=0;i<num;i++)
    {
        if(head==NULL)
        {
            head=(listnode*)malloc(sizeof(listnode));
            head->next=NULL;
            cin>>head->date;
            tail=head;
        }
        else
        {
            temp=(listnode*)malloc(sizeof(listnode));
            cin>>temp->date;
            tail->next=temp;
            tail=temp;
            tail->next=NULL;
        }
    }
    return head;
}
linklist insert(linklist head,int i,int num)
{
    int j=0;
    linklist p=head,temp=NULL,node=NULL;
    temp=(linklist)malloc(sizeof(listnode));
    if(i==0)
    {
        temp->date=num;
        temp->next=head;
        return temp;
    }
    for(j=0;j<i;j++)
    {
        node=p;            //找到前驱指针和后继指针
        p=p->next;
    }
    temp->date=num;
    node->next=temp;
    temp->next=p;
    return head;
}
linklist deletelist(linklist head,int i)
{
    int j=1;
    linklist p=head,temp,node;//找到前驱指针和后继指针
    if(i==1)
    {
        head=head->next;
        return head;    
    }
    for(j=1;j!=i;j++)
    {
        node=p;
        p=p->next;
    }
    node->next=p->next;
    return head;
}
void outputlist(linklist head)
{
    linklist p=head;
    while(p!=NULL)
    { 
        cout<<p->date<< ;
        p=p->next;
    }
}
int main()
{
    linklist head;
    int num,i;
    cin>>num;
    head=creatlist(num);
    outputlist(head);
    cin>>i>>num;
    head=insert(head,i,num);
    outputlist(head);
    cin>>i;
    deletelist(head,i);
    outputlist(head);    
}

 

单向链表的建立,插入,删除(复习一下)

标签:

原文地址:http://www.cnblogs.com/a1225234/p/4612679.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!