栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

7.21数据结构

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

7.21数据结构

7.21作业
  • 约瑟夫环
  • 进制转换

约瑟夫环
//尾插插升级
int list_insert_tail2(Looplink *p,int pos)              
{                                                       
    for(int i=1;i<=pos;i++)                             
    {                                                   
        list_insert_tail(p,i);                          
    }                                                   
} 
//游戏函数                                                      
int find_and_kill(Looplink *l,int k, int m)     //l是输入的循环链表,k是从哪开始,m是数几个数        
{    
//找到开始位置                                                   
    Looplink *p=l;                                      
    while(p->data!=k)                                   
    {                                                   
        p=p->next;                                      
    }                                                   
    printf("从%d开始n",p->data); 
    //开始游戏踢人                      
    Looplink *q=NULL;                                   
    while(p!=p->next)                                   
    {                                                   
        for(int i=1;i                                               
            q=p;                                        
            p=p->next;                                  
        }                                               
        printf("删除%dn",p->data);                     
        q->next=p->next;                                
        free(p);                                        
        p=q->next;                                      
    }      
    //循环结束留下最后一个                                             
    printf("删除%dn",p->data);                         
    return 0;                                                                                 
}                                                       
int main(int argc, const char *argv[])
{
    Looplink *l =list_create();
    if(NULL==l)
    {
        return -1;
    }
    list_insert_tail2(l,8);
    //去头节点
    Looplink *s =kill_head(l);
    l=NULL;
    list_show2(s);
    find_and_kill(s,1,4);                        
    return 0;
}
//结果
创建成功
插入成功
插入成功
插入成功
插入成功
插入成功
插入成功
插入成功
插入成功
头节点删除成功
1	2	3	4	5	6	7	8	
从1开始
删除4
删除8
删除5
删除2
删除1
删除3
删除7
删除6

进制转换
//转换函数
int jzzh(Seqstack *s ,int p ,int m)       
{    int count=0;    //记录入栈次数                     
    while(p)                              
    {                                     
        int a=p%m;                        
        push(s,a);                        
        p=p/m;                            
        count++;                          
    }                                     
    for(int i=1;i<=count;i++)             
    {                                     
        pop(s);                           
    }                                                                               
    return 0;                                                                    
}  
//主函数                                       
int main(int argc, const char *argv[])  
{
    Seqstack *s=create();
    if(NULL==s)
    {
        return -1;
    }

    jzzh(s,75,8);  
    return 0;
}

//结果
创建成功
入栈成功
入栈成功
入栈成功
1出栈成功
1出栈成功
3出栈成功

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1024683.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号