File tree Expand file tree Collapse file tree 1 file changed +5
-5
lines changed
serialize-and-deserialize-binary-tree Expand file tree Collapse file tree 1 file changed +5
-5
lines changed Original file line number Diff line number Diff line change @@ -22,9 +22,9 @@ class Codec {
22
22
}
23
23
24
24
fun deserialize (data : String ): TreeNode ? {
25
-
25
+ val datastr = data.replace( " " , " " )
26
26
var i = 0
27
- fun dfs (): TreeNode ? {
27
+ fun dfs (data : String ): TreeNode ? {
28
28
val node = TreeNode ()
29
29
val children = mutableListOf<TreeNode ?>()
30
30
var sign = 1
@@ -50,7 +50,7 @@ class Codec {
50
50
sign = 1
51
51
} else if (data[i] == ' [' ) {
52
52
i++
53
- children.add(dfs())
53
+ children.add(dfs(data ))
54
54
} else if (data[i] == ' ]' ) {
55
55
i++
56
56
children.forEachIndexed { index, tree ->
@@ -61,14 +61,14 @@ class Codec {
61
61
} else if (data.substring(i, i + 4 ) == " null" ) {
62
62
i + = 4
63
63
children.add(null )
64
- }
64
+ } else i ++
65
65
}
66
66
67
67
return children[0 ]
68
68
}
69
69
return when (data) {
70
70
" null" -> null
71
- else -> dfs()
71
+ else -> dfs(datastr )
72
72
}
73
73
}
74
74
}
You can’t perform that action at this time.
0 commit comments