zoukankan      html  css  js  c++  java
  • 约瑟夫生死问题

    #include<iostream>
    using namespace std;
    typedef struct node
    {
    	int num;
    	node *next;
    }*ptrn;
    ptrn creatlist()
    {
    
    	int a[]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30};
    	ptrn e,tem,newnode;
    	e=0;
    	for(int i=0;i<30;i++)
    	{
    		newnode=new node; 
    		newnode->num=a[i];
    		if(e==0)
    		{   
    			e=newnode;
    			tem=e;
    		}
    		else
    		{
    			tem->next=newnode;
    			tem=newnode;                   
    		}
    	}
    	if(e)tem->next=e;      
    	return e;
    }
    int length(ptrn &e)
    {
    	ptrn tem=e;
    	int count=1;
    	while(1)
    	{
    		if(tem!=0&&tem->next!=e)
    		{
    			count++;tem=tem->next;
    		}
    		else
    			break;
    	}
    	return count;
    }
    void run(ptrn &e)
    {
    	ptrn tem;
    	tem=e;
    	int count=0;                      
    	while(length(tem)>15)
    	{
    		count++;                            
    		if(count==8)
    		{
    			ptrn delenode;
    			delenode=tem->next;
    			tem->next=delenode->next;        
    			delete delenode;
    			count=0;
    		}
    		tem=tem->next;                        
    	}                                          
    	ptrn tem1;
    	tem1=tem;
    	cout<<"***************留在船上的人的编号为*********************"<<endl;
    	int b[15]; 
    	for(int i=0;i<15;i++)
    	{
    		b[i]=tem1->num;
    		tem1=tem1->next;
    	}
    	for(i=0;i<14;i++)
    	{
    		for(int j=0;j<14-i;j++)
    		{
    			if(b[j]>b[j+1])
    			{
    				int c;
    				c=b[j+1];
    				b[j+1]=b[j];
    				b[j]=c;
    			}
    		}
    	}
    	for(i=0;i<15;i++)
    	{
    		cout<<"                            "<<b[i]<<endl;
    	}
    }
    void main()
    {
    	ptrn head;
    	head=creatlist();
    	run(head);
    }
    

  • 相关阅读:
    Kotlin 学习 (一)
    Spring Boot 学习(一)
    三大特性之继承
    OC中的点语法
    getter和setter
    三大特性之封装
    匿名对象
    对象作为返回值
    对象作为参数的连续传递
    对象作为参数传递
  • 原文地址:https://www.cnblogs.com/zztong/p/6695297.html
Copyright © 2011-2022 走看看