Posts

Showing posts from 2021

Implementation of Queue using Array

 _________________________Main.cpp_____________________________________ #include"OwnQueue.h" int main() {     std::cout << "MY.. QUEUE!\n" << endl;     OwnQueue queue;     queue.dequeue();     queue.enqueue(10);     queue.enqueue(20);     queue.enqueue(0);     queue.enqueue(40);     cout << queue.peek() << endl;     queue.enqueue(50);     queue.enqueue(70);     cout << queue.isempty() << endl;     cout << queue.isfull() << endl;     queue.dequeue();     queue.dequeue();     queue.dequeue();     queue.dequeue();     cout << queue.peek() << endl;     queue.dequeue();     queue.dequeue();     cout << queue.isempty() << endl;     cout << queue.isfull() << endl;      queue.printqueue(); return 0; } _____________________________Header file content____________________________________ #pragma once #include<iostream> using namespace std; #define MAXSIZE 5 class OwnQueue { int front, r

Print Left View of Binary tree

// Print Left view of Binary tree #include <iostream> #include <vector> using namespace std; class tree {        public:      int data ;   tree * left, *right;      tree(int data)   {       this->data = data;       left = right = nullptr;   } }; void printleftview(tree *node, int level) {     static int maxlevel = 0;          if(node == nullptr)     {         return;     }          if(maxlevel < level)     {       maxlevel = level;       cout << node->data << endl;     }          printleftview(node->left, level+1);     printleftview(node->right, level+1);      } int main() {        cout<<"left view of binary tree" << endl;           //1       //2      3 //          4 tree* rootnode = new tree(1); rootnode->left = new tree(2); rootnode->left->left = new tree(3); rootnode->left->right = new tree(6); rootnode->left->right->right = new tree(7); rootnode->right = new tree(4); rootnode->right->right

optimized bubble sort

#include <iostream> #include <vector> using namespace std; int main() {     vector<int> vec = {10,20,30};          //booble sort     bool  check = false;          for(int i = 0; i<= vec.size(); i++)     {                   for (int j= i+1; j<vec.size(); j++)         {                          if(vec[j] < vec[i])             {                 int temp = vec[i];                 vec[i] = vec[j];                 vec[j] = temp;                 check = true;             }                      }                  if(!check)         {             cout << "vector is alreday sorted" <<endl;             break;         }     }          for(int x : vec)     {         cout << x << endl;     }     return 0; } 0(n) - complexity  for sorted data 

Creating Dynamic Array using C++

 #include <iostream> using namespace std; template <typename T> class Array { private: T* base; int size; public : Array(T arr[], int length) { base = new T[sizeof(arr)]; size = length; for (int i = 0; i < length; i++) base[i] = arr[i]; } void print(); }; template <typename T> void Array<T>::print() { for (int i = 0; i < size; i++) cout << " " << *(base + i) << endl; } int main() { int arr1[] = {10, 20, 30}; Array<int> obj(arr1, 3); obj.print(); char arr2[] = { 'v', 'a', 'r','u','n' }; Array<char> obj1(arr2, (sizeof(arr2) / sizeof(arr2[0]))); obj1.print(); return 0; }