Balanced brackets: Difference between revisions

no edit summary
No edit summary
Line 8,085:
: OK
[] : OK
</pre>
 
=={{header|Vlang}}==
<lang vlang>import datatypes as dt
 
fn is_valid(bracket string) bool {
mut s := dt.Stack<string>{}
for b in bracket.split('') {
if b == '[' {
s.push(b)
} else {
if s.peek() or {''} == '[' {
s.pop() or {panic("WON'T GET HERE EVER")}
} else {
return false
}
}
}
return true
}
 
fn main() {
brackets := ['','[]','[][]','[[][]]','][','][][','[]][[]','[][[][[]][][[][]]]']
for b in brackets {
println('$b ${is_valid(b)}')
}
}</lang>
 
{{out}}
<pre>
true
[] true
[][] true
[[][]] true
][ false
][][ false
[]][[] false
[][[][[]][][[][]]] true
</pre>
 
338

edits