Question 1
void fun(int n)
{
Stack S; // Say it creates an empty stack S
while (n > 0)
{
// This line pushes the value of n%2 to stack S
push(&S, n%2);
n = n/2;
}
// Run while Stack S is not empty
while (!isEmpty(&S))
printf(\"%d \", pop(&S)); // pop an element from S and print it
}
Question 2
Consider the following pseudocode that uses a stack
declare a stack of characters
while ( there are more characters in the word to read )
{
read a character
push the character on the stack
}
while ( the stack is not empty )
{
pop a character off the stack
write the character to the screen
}
What is output for input "geeksquiz"?
Question 3
Following is an incorrect pseudocode for the algorithm which is supposed to determine whether a sequence of parentheses is balanced:
declare a character stack
while ( more input is available)
{
read a character
if ( the character is a \'(\' )
push it on the stack
else if ( the character is a \')\' and the stack is not empty )
pop a character off the stack
else
print \"unbalanced\" and exit
}
print \"balanced\"
Which of these unbalanced sequences does the above code think is balanced?
Question 4
8 2 3 ^ / 2 3 * + 5 1 * -Note that ^ is the exponentiation operator. The top two elements of the stack after the first * is evaluated are:
Question 5
Question 6
Question 7
Assume that the operators +, -, × are left associative and ^ is right associative. The order of precedence (from highest to lowest) is ^, x , +, -. The postfix expression corresponding to the infix expression a + b × c - d ^ e ^ f is
Question 10
There are 30 questions to complete.