Skip to content

Instantly share code, notes, and snippets.

@mycodeschool
mycodeschool / DoublyLinkedList.c
Created Nov 12, 2013
Doubly Linked List implementation in C
View DoublyLinkedList.c
/* Doubly Linked List implementation */
#include<stdio.h>
#include<stdlib.h>
struct Node {
int data;
struct Node* next;
struct Node* prev;
};
@mycodeschool
mycodeschool / InfixToPostfix.cpp
Created Dec 9, 2013
Infix to Postfix conversion in C++ using stack. We are assuming that both operators and operands in input will be single character.
View InfixToPostfix.cpp
/*
Infix to postfix conversion in C++
Input Postfix expression must be in a desired format.
Operands and operator, both must be single character.
Only '+' , '-' , '*', '/' and '$' (for exponentiation) operators are expected.
*/
#include<iostream>
#include<stack>
#include<string>
View BSTDeletion_CPP.cpp
/* Deleting a node from Binary search tree */
#include<iostream>
using namespace std;
struct Node {
int data;
struct Node *left;
struct Node *right;
};
//Function to find minimum in a tree.
Node* FindMin(Node* root)
View MergeSort_C.C
/* Merge sort in C */
#include<stdio.h>
#include<stdlib.h>
// Function to Merge Arrays L and R into A.
// lefCount = number of elements in L
// rightCount = number of elements in R.
void Merge(int *A,int *L,int leftCount,int *R,int rightCount) {
int i,j,k;
@mycodeschool
mycodeschool / gcd.cpp
Last active Jan 12, 2021
GCD: Brute force and Euclid's algorithm
View gcd.cpp
#include<algorithm>
using namespace std;
int euclid_gcd(int a, int b)
{
while (b != 0)
{
int r = a % b;
a = b;
View PostfixEvaluation.cpp
/*
Evaluation Of postfix Expression in C++
Input Postfix expression must be in a desired format.
Operands must be integers and there should be space in between two operands.
Only '+' , '-' , '*' and '/' operators are expected.
*/
#include<iostream>
#include<stack>
#include<string>
@mycodeschool
mycodeschool / PreorderInorderPostorder_CPP.cpp
Last active Jan 1, 2021
Binary tree traversal: Preorder, Inorder, Postorder
View PreorderInorderPostorder_CPP.cpp
/* Binary Tree Traversal - Preorder, Inorder, Postorder */
#include<iostream>
using namespace std;
struct Node {
char data;
struct Node *left;
struct Node *right;
};
View Queue_CircularArrayImplementation.cpp
/* Queue - Circular Array implementation in C++*/
#include<iostream>
using namespace std;
#define MAX_SIZE 101 //maximum size of the array that will store Queue.
// Creating a class named Queue.
class Queue
{
private:
int A[MAX_SIZE];
@mycodeschool
mycodeschool / BST_InorderSuccessor_CPP.cpp
Last active Dec 23, 2020
C++ program to find Inorder successor in a BST
View BST_InorderSuccessor_CPP.cpp
/* C++ program to find Inorder successor in a BST */
#include<iostream>
using namespace std;
struct Node {
int data;
struct Node *left;
struct Node *right;
};
//Function to find some data in the tree
@mycodeschool
mycodeschool / Stack_ArrayImplementation.C
Last active Dec 4, 2020
This is a basic array based implementation of stack data structure in C.
View Stack_ArrayImplementation.C
// Stack - Array based implementation.
// Creating a stack of integers.
#include<stdio.h>
#define MAX_SIZE 101
int A[MAX_SIZE]; // integer array to store the stack
int top = -1; // variable to mark top of stack in array
// Push operation to insert an element on top of stack.