zoukankan      html  css  js  c++  java
  • 删除结点 (双向链表)

    #include<stdio.h>
    typedef struct DuLNode
    {
    	int data;
    	struct DuLNode *prior;
    	struct DuLNode *next;
    }DuLNode,* DuLinkList;
    void ListDelete(DuLinkList &L,DuLNode *p,int &e)
    {
    	e=p->data;
    	p->prior->next=p->next;
    	p->next->prior=p->prior;
    	delete p;
    }
    int main()
    {
    	int n,i;
    	scanf("%d",&n);
    	DuLinkList p=new DuLNode;
    	DuLinkList L=p;
    	for(i=0;i<n;i++)
    	{
    		DuLinkList s=new DuLNode;
    		s->data=i;
    		s->prior=p;
    		p->next=s;
    		p=s;
    		L->prior=p;
    		p->next=L;
    	}
    	int e;
    	DuLinkList t=L->next->next->next;
    	ListDelete(L,t,e);
    	p=L->next;
    	for(i=0;i<n-1;i++)
    	{
    		printf("%d ",p->data);
    		p=p->next;
    	}
    	printf("
    ");
    	return 0;
    }

  • 相关阅读:
    SPOJ NDIV
    SPOJ ETF
    SPOJ DIVSUM
    头文件--持续更新
    SPOJ FRQPRIME
    SPOJ FUNPROB
    SPOJ HAMSTER1
    观光
    最短路计数
    拯救大兵瑞恩
  • 原文地址:https://www.cnblogs.com/NYNU-ACM/p/4237351.html
Copyright © 2011-2022 走看看