Infix, Postfix and Prefix Notations/Expressions

Infix, Postfix and Prefix notations are most common ways of writing expressions. Infix notation: Example: (A+B) Infix notation is commonly used in arithmetic formula or statements, the operators are written in-between their operands. An expression such as A * ( B + C ) / D is solved as: First add B and C. Multiply … Read more

Valid Multiple Parentheses

Objective: Given a string containing just the characters ‘(‘, ‘)’, ‘{‘, ‘}’, ‘[‘ and ‘]’, determine if the input string is valid. Example: ()()([]({}))[] valid: true ()({]) valid: false []{}() valid: true [(}{)] valid: false Earlier we had seen problem Valid Parentheses, where only one type of parentheses was present in the input string, in this problem we can have multiple types … Read more

Reverse the given String using Stack

Objective: Given a String, write a java program to reverse the string using Stack Example: Input: “tutorial horizon” Output: “noziroh lairotut” Recommended: Please read Stack Data Structure before continue to read. Approach: Initialize a StringBuffer, this will be our output. Initialize a Stack. Traverse through string, one character at a time and keep adding it … Read more

Stack Data Structure – Introduction and Implementation

What is Stack?? Stack is an abstract data type (ADT) and very useful in programming. In computer science, a stack is an abstract data type that serves as a collection of elements. Majorly all the operations are done at only one end of the stack which is top of the stack. The order in which elements in stack are stored is with … Read more

Implement Stack Using Linked List

Objective: Write an algorithm to implement Stack using Linked List. If you do not know about then for starters its abstract data type in which follows the principle of LIFO (Last-In-First-Out) which means the data goes in last comes out first to read about in detail please read this link Stack Approach: Solution is quite … Read more

Implement Queue Using Stacks

Objective: We know that Queue is FIFO (First-in-First-Out) and Stack is LIFO ( Last-in-First-Out). Here our objective is to implement queue using stacks. Approach: Take 2 Stacks, stack1 and stack2. stack1 will be used a back of the Queue and stack2 will be used as front of the Queue. Push() operation will be done on … Read more