csharp高级练习题:你能得到循环吗?【难度:3级】:
您将获得一个作为链接列表开头的节点.此列表始终包含尾部和循环.
您的目标是确定循环的长度.
例如,在下图中,尾部的大小为3,循环大小为11.
# 使用`next'方法获取以下节点.
node.next
//使用`getNext'方法或'next'属性获取以下节点.
node.getNext()
node.next
# 使用`next'属性获取以下节点
node.next
//使用`getNext()`方法获取以下节点.
node.getNext()
- 使用`next :: Node a - > Node a`函数获取以下节点
# 使用`next'方法获取以下节点.
node.next
使用`Node :: getNext()`实例方法获取以下节点.
```php
$节点 - > GETNEXT();
```
使用`Node.next`获取下一个节点.
```kotlin
node.next
```
注意:不要改变节点!
感谢shadchnev,我打破了Hash类中的所有方法.
在通过Kata之后,不要错过dmitry在讨论中的文章!
编程目标:
public class Kata{
public static int getLoopSize(LoopDetector.Node startNode){
//Enter code here.
return 0;
}
}
测试样例:
using NUnit.Framework;
[TestFixture]
public class Tests {
[Test]
public void FourNodesWithLoopSize3(){
var n1 = new LoopDetector.Node();
var n2 = new LoopDetector.Node();
var n3 = new LoopDetector.Node();
n1.next = n2;
n2.next = n3;
n3.next = n4;
n4.next = n2;
Assert.AreEqual(3,Kata.getLoopSize(n1));
}
[Test]
最佳答案(多种解法):
更多关联题目:
免责申明
本博客所有编程题目及答案均收集自互联网,主要用于供网友学习参考,如有侵犯你的权益请联系管理员及时删除,谢谢
题目收集至https://www.codewars.com/
https://www.codewars.com/kata/can-you-get-the-loop