但行好事  莫问前程

自己实现集合框架:利用单链表解决约瑟夫环问题

这是系列文章,每篇文章末尾均附有源代码地址。目的是通过模拟集合框架的简单实现,从而对常用的数据结构和java集合有个大概的了解。当然实现没有java集合的实现那么复杂,功能也没有那么强大,但是可以通过这些简单的实现窥探到底层的一些共性原理。

一. 算法描述和实现

关于什么是约瑟夫环的问题请参考前面的文章自己实现集合框架(三):利用顺序表解决约瑟夫环问题,在之前的文章中介绍了如何利用顺序表解决约瑟夫环的问题。在前面的基础上,利用单链表解决约瑟夫环很简单,只需要把自己实现集合框架(三):利用顺序表解决约瑟夫环问题中创建SeqList对象的语句替换为如下创建SinglyLinkedList对象语句,其余代码不变,则可求解约瑟夫环问题。

this.seqList = new SinglyLinkedList<String>();// 单链表元素类型是字符串

执行new Josephus(5,2).sentence(1);,单链表的变化过程如下图所示:




二.源代码示例

github地址:点击查看
码云地址:点击查看

打赏
欢迎关注人生设计师的微信公众账号
公众号ID:longjiazuoA

未经允许不得转载:人生设计师 » 自己实现集合框架:利用单链表解决约瑟夫环问题

分享到:更多 ()

人生设计师-接受不同的声音

联系我关于我