Program Discussion :: Stack
78 / 5
Write a function to test if the given set of brackets are balanced or not.
Answer:
Asked In ::
Language:
Anjani
24 Jun, 2017 5:39 PM
<!DOCTYPE html>
<html>
<body>
<?php
function Balance()
{
$arr = array(
"[",
"}",
"]",
"(",
"{",
"(",
")"
);
$arrlength = count($arr);
$count1 = 0;
$count2 = 0;
$count3 = 0;
for ($x = 0; $x < $arrlength; $x++) {
if ($arr[$x] == "(")
$count1++;
if ($arr[$x] == ")")
$count1--;
if ($arr[$x] == "{")
$count2++;
if ($arr[$x] == "}")
$count2--;
if ($arr[$x] == "[")
$count3++;
if ($arr[$x] == "]")
$count3--;
}
if ($count1 == 0)
echo "brackets () are balanced<br/>";
else
echo "brackets () are not balanced<br/>";
if ($count2 == 0)
echo "brackets {} are balanced<br/>";
else
echo "brackets{} are not balanced<br/>";
if ($count3 == 0)
echo "brackets []are balanced<br/>";
else
echo "brackets [] are not balanced<br/>";
}
Balance(); //function calling
?>
</body>
</html>
Language:
Arvind Singh
7 Jul, 2017 9:30 AM
#include<stdio.h>
#include<stdlib.h>
#define bool int
/* structure of a stack node */
struct sNode
{
char data;
struct sNode *next;
};
/* Function to push an item to stack*/
void push(struct sNode** top_ref, int new_data);
/* Function to pop an item from stack*/
int pop(struct sNode** top_ref);
/* Returns 1 if character1 and character2 are matching left
and right Parenthesis */
bool isMatchingPair(char character1, char character2)
{
if (character1 == '(' && character2 == ')')
return 1;
else if (character1 == '{' && character2 == '}')
return 1;
else if (character1 == '[' && character2 == ']')
return 1;
else
return 0;
}