Optus Notes 2
Optus Notes 2
#include <iostream>
class node{
public:
int val;
node* left;
node* right;
node(int data){
val=data;
};
int main(){
return 0;
Rec (______________)
Base case
Logic
Return.
RECURRENCE RELATION
TREE/GRAPH
DECIDION MAKING BASED ON OPTIONS.
//base case
if(n==1){
return 1;
//logic
ans=n*factorial(n-1);
//return statement
return ans;
int main(){
int n;
cin>>n;
cout<<fac;
return 0;
2. #include<iostream>
using namespace std;
//recursive call
return n+ recSum(n-1);
}
int main(){
int n=10;
return 0;
3.
#include<iostream>
sum += (i*i);
return sum;
int main(){
int n=2;
cout<< sumOfSquares(n);
return 0;
5.
#include<iostream>
//base case
if(i>=j){
return ans;
if (s[i] != s[j]) {
return false;
//logic
return ans;
int main(){
string s= "abbcbba";
cout<< isPalin(s,0,s.size()-1);
return 0;
#include<iostream>
if(o<0 pr z<0){
return 0;
return 1;
int ans=0;
if(prev == 0){
} else{
ans = rec(0, o, z-1);
return ans;
int main(){
cout<<rec(0,o,z-1)+ rec(1,o-1,z);
return 0;
#include<iostream>
//base case
if(idx>=nums.size()){
return 0;
if(prev ==1){
}else{
int main(){
vector<int>nums = {2,-5,3,6,-12,4};
return 0;
}
Trees.
INORDER TRAVERSAL
#include <iostream>
class solution{
public:
vector<int>v;
trav(root,v);
return v;
if(root == nullptr){
return;
trav(root->left, v);
v.push_back(root->val);
trav(root->right, v);
};