1、你的remove方法不对,你的方法每次删掉的是从head开始第m个位置的节点,但约瑟夫环需要的是要删掉每次循环数到m的位置的节点。remove方法可以去掉,再把out方法改一下就可以了。
让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:主机域名、网页空间、营销软件、网站建设、宜春网站维护、网站推广。
2、约瑟夫环问题的一种描述是:编号为3…….n的n个人按顺时针方向围坐一圈 ,每人手持一个密码(正整数),开始任意选一个整数作为报数上限值,从第一个人开始顺时针自1开始顺序报数,报到m时停止报数。
3、type struct Node定义中的Node *next前面需要加上struct。
双端链表插入时是双向的。\x0d\x0a有两条链:一条从头到尾,一条从尾到头,删除遍历时也是双向的。
实现链表的思路: 1)链表类,结点类(链表类的内部类),在main()方法创建一条链表类对象,通过方法逐步创建结点类,通过引用链接起来成为链表。2)结点类包含数据和对下个结点的引用,以及可以对数据赋值的构造函数。
现在没环境写程序,哈哈,你自己翻翻书就可以写的。。单向链表可以是linkedlist 或者map也可以啊key代表你的链表值,value代表下一个指向的节点值,实现很方便的,排序取出来方到数组里,sort一下,就可以了。
我看了好长时间,终于明白你哪里错了。1)先说一个你的程序不是算法问题的错误,你的链表的header里面不应该存放具体数据,也就是说header里面的data应该不用。
Node next;//指向下一个结点 } 将数据域定义成Object类是因为Object类是广义超类,任何类对象都可以给其赋值,增加了代码的通用性。
1)先说一个你的程序不是算法问题的错误,你的链表的header里面不应该存放具体数据,也就是说header里面的data应该不用。
有两条链:一条从头到尾,一条从尾到头,删除遍历时也是双向的。
如果你一定要用链表:class AB{ String ip;int socket;String fileName AB next;这里相当于c的指针了 } /// 用Map吧,好实现多了。