Write a method named checkBalance that accepts a string of source code and uses a Stack to check whether the braces/parentheses are balanced. Every ( or { must be closed by a } or ) in the opposite order. Return the index at which an imbalance occurs, or -1 if the string is

Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN:9780133594140
Author:James Kurose, Keith Ross
Publisher:James Kurose, Keith Ross
Chapter1: Computer Networks And The Internet
Section: Chapter Questions
Problem R1RQ: What is the difference between a host and an end system? List several different types of end...
icon
Related questions
Question
checkBalance
Language/Type: Java Stack collections
string
Related Links:
String
Write a method named checkBalance that
accepts a string of source code and uses a
Stack to check whether the
braces/parentheses are balanced. Every ( or
{ must be closed by a } or ) in the opposite
order. Return the index at which an
imbalance occurs, or -1 if the string is
balanced. If any ( or { are never closed,
return the string's length.
Here are some example calls:
// index
0123456789012345678901234567890
checkBalance("if (a(4) > 9) { foo(a(2)); }")
returns -1 because balanced
checkBalance("for (i=0;i<a(3};i++) { foo{); )")
// returns 14 because } out of order
checkBalance("while (true) foo(); }{ ()")
returns 20 because } doesn't match any {
checkBalance("if (x) {")
returns 8 because { is never closed
//
//
//
Constraints: Use a single stack as auxiliary
storage.
Transcribed Image Text:checkBalance Language/Type: Java Stack collections string Related Links: String Write a method named checkBalance that accepts a string of source code and uses a Stack to check whether the braces/parentheses are balanced. Every ( or { must be closed by a } or ) in the opposite order. Return the index at which an imbalance occurs, or -1 if the string is balanced. If any ( or { are never closed, return the string's length. Here are some example calls: // index 0123456789012345678901234567890 checkBalance("if (a(4) > 9) { foo(a(2)); }") returns -1 because balanced checkBalance("for (i=0;i<a(3};i++) { foo{); )") // returns 14 because } out of order checkBalance("while (true) foo(); }{ ()") returns 20 because } doesn't match any { checkBalance("if (x) {") returns 8 because { is never closed // // // Constraints: Use a single stack as auxiliary storage.
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 5 steps with 5 images

Blurred answer
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
Computer Networking: A Top-Down Approach (7th Edi…
Computer Networking: A Top-Down Approach (7th Edi…
Computer Engineering
ISBN:
9780133594140
Author:
James Kurose, Keith Ross
Publisher:
PEARSON
Computer Organization and Design MIPS Edition, Fi…
Computer Organization and Design MIPS Edition, Fi…
Computer Engineering
ISBN:
9780124077263
Author:
David A. Patterson, John L. Hennessy
Publisher:
Elsevier Science
Network+ Guide to Networks (MindTap Course List)
Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:
9781337569330
Author:
Jill West, Tamara Dean, Jean Andrews
Publisher:
Cengage Learning
Concepts of Database Management
Concepts of Database Management
Computer Engineering
ISBN:
9781337093422
Author:
Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:
Cengage Learning
Prelude to Programming
Prelude to Programming
Computer Engineering
ISBN:
9780133750423
Author:
VENIT, Stewart
Publisher:
Pearson Education
Sc Business Data Communications and Networking, T…
Sc Business Data Communications and Networking, T…
Computer Engineering
ISBN:
9781119368830
Author:
FITZGERALD
Publisher:
WILEY