Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Buy a domain name - Register cheap domain names from $0.99 - Namecheap

Scalable Hosting That Grows With You

Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Semrush - keyword research tool

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

39,844 questions

51,765 answers

573 users

How to check if a string contains only valid parentheses (open close same type (), {}, []) in Scala

1 Answer

0 votes
object ValidParentheses {
  def stringContainsValidParentheses(s: String): Boolean = {
    val stack = scala.collection.mutable.Stack[Char]() // Stack to track closing parentheses

    for (ch <- s) {
      ch match {
        case '(' => stack.push(')')
        case '{' => stack.push('}')
        case '[' => stack.push(']')
        case ')' | '}' | ']' =>
          if (stack.isEmpty || stack.pop() != ch) return false
        case _ =>
      }
    }

    stack.isEmpty // Return true if the stack is empty, indicating valid parentheses
  }

  def main(args: Array[String]): Unit = {
    println(stringContainsValidParentheses("(){}[]"))     
    println(stringContainsValidParentheses("([{}])"))      
    println(stringContainsValidParentheses("(){}[]()(){}"))
    println(stringContainsValidParentheses("(]"))          
    println(stringContainsValidParentheses("({[)]}"))      
  }
}



/*
run:
   
true
true
true
false
false
 
*/

 



answered Apr 25, 2025 by avibootz
...