11package  com_github_leetcode.random 
22
3- import  java.util.StringJoiner 
4- 
53class  Node  {
64    var  `val `:  Int 
75    var  next:  Node ?  =  null 
@@ -12,33 +10,38 @@ class Node {
1210    }
1311
1412    override  fun  toString (): String  {
15-         val  result =  StringJoiner (" ," " [" " ]" 
16-         val  result2 =  StringJoiner (" ," " [" " ]" 
17-         result2.add(`val `.toString())
13+         val  result =  StringBuilder ()
14+         result.append(" [" 
15+         result.append(" [" 
16+         result.append(`val `)
17+         result.append(" ," 
1818        if  (random ==  null ) {
19-             result2.add (" null" 
19+             result.append (" null" 
2020        } else  {
21-             result2.add (random!! .`val `.toString() )
21+             result.append (random!! .`val `)
2222        }
23-         result.add(result2.toString() )
23+         result.append( " ] " 
2424        var  curr =  next
2525        while  (curr !=  null ) {
26-             val  result3 =  StringJoiner (" ," " [" " ]" 
27-             result3.add(curr.`val `.toString())
26+             result.append(" ," 
27+             result.append(" [" 
28+             result.append(curr.`val `)
29+             result.append(" ," 
2830            if  (curr.random ==  null ) {
29-                 result3.add (" null" 
31+                 result.append (" null" 
3032            } else  {
3133                var  randomIndex =  0 
32-                 var  curr2 :  Node ?  =  this 
33-                 while  (curr2 !! .next !=  null  &&  curr2  != =  curr.random) {
34-                     randomIndex  + =   1 
35-                     curr2  =  curr2 .next
34+                 var  indexFinder :  Node ?  =  this 
35+                 while  (indexFinder !! .next !=  null  &&  indexFinder  != =  curr.random) {
36+                     randomIndex++ 
37+                     indexFinder  =  indexFinder .next
3638                }
37-                 result3.add (randomIndex.toString() )
39+                 result.append (randomIndex)
3840            }
39-             result.add(result3.toString() )
41+             result.append( " ] " 
4042            curr =  curr.next
4143        }
44+         result.append(" ]" 
4245        return  result.toString()
4346    }
4447}
0 commit comments