标签:name tno include ++ div for creat std insert
#include<cstdio> #include<cstdlib> using namespace std; typedef struct ListNode{ int data; ListNode* pre; ListNode* nxt; }List; int length; List* CreateList(int len) { List* ret=(List*)malloc(sizeof(List)); List* tail=ret; ret->pre=ret,ret->nxt=ret,ret->data=1; for(int i=2;i<=len;i++) { List* newnode=(List*)malloc(sizeof(List)); newnode->data=i, tail->nxt=newnode,newnode->pre=tail,newnode->nxt=ret,tail=newnode; } ret->pre=tail; length=len; return ret; } void Delete(List* pos) { pos->pre->nxt=pos->pre; pos->nxt->pre=pos->nxt; free(pos); length--; } List* JumpToItem(List* list,int n) { if(n==0) return list; while(n--) list=list->nxt; return list; } void Print(List* list) { printf("%d ",list->data); for(int i=2;i<=length;i++) { list=list->nxt; printf("%d ",list->data); } printf("\n"); } void InsertAft(List* pos,int data) { List* newnode=(List*)malloc(sizeof(newnode)); newnode->data=data, newnode->pre=pos,newnode->nxt=pos->nxt,pos->nxt=newnode; length++; } void InsertBef(List* pos,int data) { pos=pos->pre; InsertAft(pos,data); } int main() { List* list=CreateList(15); Print(list); Delete(list); Print(JumpToItem(list,1)); InsertAft(list,233); Print(JumpToItem(list,1)); InsertBef(JumpToItem(list,2),2333); Print(JumpToItem(list,1)); return 0; }
标签:name tno include ++ div for creat std insert
原文地址:http://www.cnblogs.com/TheRoadToAu/p/8012755.html