Question: Java Data Structures Examine the following method explain what it does; write the pre and post conditions. public static boolean balanced(String p) { final char
Java Data Structures Examine the following method explain what it does; write the pre and post conditions.
public static boolean balanced(String p)
{
final char LEFT_PAREN = '(';
final char RIGHT_PAREN = ')'
final char LEFT_BRACKET = '{';
final char RIGHT_BRACKET = '}';
CharStack s = new CharStack( ); int i; int length = p.length( ); char next;
for (i = 0; i < length; i++) { next = (char) p.charAt(i); switch (next) {
case LEFT_PAREN: case LEFT_BRACKET: s.push(next); break;
case RIGHT_PAREN: if (s.is_empty( ) || s.pop( ) != LEFT_PAREN) return false;
break; case RIGHT_BRACKET: if (s.is_empty( ) || s.pop( ) != LEFT_BRACKET) return false;
break; default: throw new IllegalArgumentException ("Illegal character: " + next);
}
}
return s.isEmpty( );
}
Why is it a bad idea to implement a singly linked list version of a queue with the head of the list as the rear of the queue?
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
