Same fringe: Difference between revisions
Content added Content deleted
m (Added the Sidef language) |
m (→{{header|Sidef}}: modified the code to work with the latest version of Sidef) |
||
Line 2,186: | Line 2,186: | ||
func get_tree_iterator(*rtrees) { |
func get_tree_iterator(*rtrees) { |
||
var tree; |
var tree; |
||
func { |
|||
tree = rtrees.pop; |
tree = rtrees.pop; |
||
while (tree.is_an(Array)) { |
while (defined(tree) && tree.is_an(Array)) { |
||
rtrees.append(tree[1]); |
rtrees.append(tree[1]); |
||
tree = tree[0]; |
tree = tree[0]; |
||
} |
} |
||
return tree; |
return tree; |
||
} |
} |
||
Line 2,201: | Line 2,201: | ||
loop { |
loop { |
||
var (L, R) = (ti1(), ti2()); |
var (L, R) = (ti1(), ti2()); |
||
defined(L) && defined(R) && (L == R) && next; |
|||
!defined(L) && !defined(R) && return "Same"; |
|||
return "Different"; |
return "Different"; |
||
} |
} |
||
Line 2,210: | Line 2,210: | ||
say ("tree[#{tree_idx-1}] vs tree[#{tree_idx}]: ", |
say ("tree[#{tree_idx-1}] vs tree[#{tree_idx}]: ", |
||
cmp_fringe(trees[tree_idx-1], trees[tree_idx])); |
cmp_fringe(trees[tree_idx-1], trees[tree_idx])); |
||
} |
}</lang> |
||
{{out}} |
{{out}} |