期刊问答网 论文发表 期刊发表 期刊问答
  • 回答数

    2

  • 浏览数

    288

koalabear007
首页 > 期刊问答网 > 期刊问答 > 数据结构学术论文题目

2个回答 默认排序1
  • 默认排序
  • 按时间排序

gouduo

已采纳
约瑟夫环很简单:#include #include typedef struct node{ int value; struct node *next; }NODE; //建立循环链表(尾插法建立)//NODE *createlink(int number) { NODE *head=NULL,*p=NULL,*q=NULL; int i=1; head=(struct node*)malloc(sizeof(struct node)); //***建立第一个节点***// head->value=i; p=head; for(i=2;i<=number;i++) { q=(struct node*)malloc(sizeof(struct node)); if(q==0) return 0; p->next=q; p=q; p->value=i; } p->next=head; return head; } //建立约瑟夫环void jose(NODE *p,int number,int n) { int i,j,g=0; NODE *q=NULL; for(i=1;i<=number;i++) { for(j=1;jnext; q=p->next; //***q用来记录要删除的节点p->next=q->next; //****删去q节点p=p->next; printf("第%3d个出圈号是:%3d/n",i,q->value); free(q); } printf("/n"); // p->next=NULL; } //主函数int main( ) {  int number=0;  int n=0; printf("请输入总人数number和出拳编号n:/n"); scanf("%d",&number); scanf("%d",&n); NODE *head=NULL; head=createlink(number); jose(head,number,n); system("PAUSE"); return 1; } 第二个直接用单链表就可以了,写不下了,你再问一个,我给你第二个的

数据结构学术论文题目

267 评论(13)

小木虫??

void merge(LinkList *A,LinkList *B,LinkList *&C){LinkList *p=A->next, *q=B->next,*r; C=A,C->next=NULL;r=C;while(p!=NULL&&q!=NULL){ if(p->datadata)//将*p链接到C上 {r->next=p;p=p->next; r=r->next;} else if(p->data>q->data)//将*q链接到C上 { r->next=q;q=q->next; r=r->next; }else{r->next=p;p=p->next;r=r->next; r->next=q;q=q->next;r=r->next;}}r->next=NULL;if(q!=NULL)p=q;if(p!=NULL)r->next=p;//将余下的结点链接到C上}
130 评论(14)

相关问答