Professional Documents
Culture Documents
Codes
Fibonacci Recursive Run on IDE
#include <iostream>
if(n==0||n==1){
return n;
int f1 = fib(n-1);
int f2 = fib(n-2);
return f1 + f2;
int main() {
int n;
cin>>n;
cout<<fib(4)<<endl;
return 0;
if(b==0){
return 1;
else{
return a*power(a,b-1);
if(b==0){
return 1;
smallAns *= smallAns;
if(b&1){
return a*smallAns;
return smallAns;
int main() {
int a,b;
cin>>a>>b;
cout<<power(a,b)<<endl;
cout<<fastPower(5,5)<<endl;
return 0;
if(n==1){
return true;
}
if(a[0]<a[1] && isSorted(a+1,n-1)){
return true;
return false;
int main() {
int n = 5;
if(isSorted(a,n)){
cout<<"Yes Sorted!";
else{
cout<<"Not Sorted!";
return 0;
//Base Case
if(n==1){
return;
for(int j=0;j<=n-2;j++){
if(a[j]>a[j+1]){
swap(a[j],a[j+1]);
bubbleSort(a,n-1);
//Base Case
if(n==1){
return;
if(j==n-1){
return bubbleSort2(a,0,n-1);
//Rec Case
if(a[j]>a[j+1]){
swap(a[j],a[j+1]);
bubbleSort2(a,j+1,n);
return;
int main() {
int n = 5;
bubbleSort(a,n);
for(int i=0;i<n;i++){
cout<<a[i]<<" ";
return 0;
if(n==0){
return;
cout<<n<<" ";
dec(n-1);
if(n==0){
return;
inc(n-1);
cout<<n<<" ";
int main() {
int n=5;
dec(n);
cout<<endl;
inc(n);
if(i==n){
return -1;
if(a[i]==key){
return i;
return linearSearch(a,i+1,n,key);
int main() {
int n = sizeof(a)/sizeof(int);
cout<<linearSearch(a,0,n,key);
return 0;
if(n==0){
return;
print(n/10);
cout<<spellings[n%10]<<" ";
int main() {
int n;
cin>>n;
print(n);
int i = s;
int j = mid+1;
int k = s;
int temp[100];
temp[k++] = a[i++];
else{
temp[k++] = a[j++];
while(i<=mid){
temp[k++] = a[i++];
while(j<=e){
temp[k++] = a[j++];
//We need to copy all element to original arrays
for(int i=s;i<=e;i++){
a[i] = temp[i];
if(s>=e){
return;
//Follow 3 steps
//1. Divide
mergeSort(a,s,mid);
mergeSort(a,mid+1,e);
merge(a,s,e);
int main(){
int a[100];
int n;
cin>>n;
for(int i=0;i<n;i++){
cin>>a[i];
mergeSort(a,0,n-1);
for(int i=0;i<n;i++){
cout<<a[i]<<" , ";
//Base case
if(in[i]=='\0'){
cout<<in<<" ,";
return;
//Recursive Case
for(int j=i;in[j]!='\0';j++){
swap(in[i],in[j]);
permute(in,i+1);
swap(in[i],in[j]);
int main() {
char in[100];
cin>>in;
permute(in,0);
return 0;
#include <cstring>
S","TUV","WXYZ"};
//Base Case
if(in[i]=='\0'){
out[j] = '\0';
cout<<out<<",";
return;
//Rec Case
if(digit==1||digit==0){
printKeypadString(in,out,i+1,j);
for(int k=0;keypad[digit][k]!='\0';k++){
out[j] = keypad[digit][k];
printKeypadString(in,out,i+1,j+1);
int main() {
char in[100];
char out[100];
cin>>in;
printKeypadString(in,out,0,0);
t m,int n){
sol[i][j] = 1;
for(int x=0;x<=m;x++){
for(int y=0;y<=n;y++){
cout<<sol[x][y]<<" ";
}
cout<<endl;
cout<<endl;
return true;
// Rec Case
if(i>m || j>n){
return false;
if(maze[i][j]=='X'){
return false;
//Assumption
sol[i][j] = 1;
sol[i][j] = 0;
if(rightSuccess||downSuccess){
return true;
}
return false;
int main(){
char maze[10][10] = {
"0000",
"00X0",
"000X",
"0X00",
};
if(ans==false){
return 0;
#include <cmath>
for(int x=0;x<n;x++){
if(mat[x][j]==number||mat[i][x]==number){
return false;
int rn = sqrt(n);
int sx = (i/rn)*rn;
int sy = (j/rn)*rn;
for(int x=sx;x<sx+rn;x++){
for(int y=sy;y<sy+rn;y++){
if(mat[x][y]==number){
return false;
return true;
//Base Case
if(i==n){
for(int i=0;i<n;i++){
for(int j=0;j<n;j++){
cout<<mat[i][j]<<" ";
cout<<endl;
return true;
if(j==n){
return solveSudoku(mat,i+1,0,n);
if(mat[i][j]!=0){
return solveSudoku(mat,i,j+1,n);
//Rec Case
for(int number=1;number<=n;number++){
if(canPlace(mat,i,j,n,number)){
//Assume
mat[i][j] = number;
if(couldWeSolve==true){
return true;
}
}
//Backtrack here
mat[i][j] = 0;
return false;
int main() {
int mat[9][9] =
{5,3,0,0,7,0,0,0,0},
{6,0,0,1,9,5,0,0,0},
{0,9,8,0,0,0,0,6,0},
{8,0,0,0,6,0,0,0,3},
{4,0,0,8,0,3,0,0,1},
{7,0,0,0,2,0,0,0,6},
{0,6,0,0,0,0,2,8,0},
{0,0,0,4,1,9,0,0,5},
{0,0,0,0,8,0,0,7,9}
};
solveSudoku(mat,0,0,9);
return 0;
}
Subsequences Run on IDE
#include <iostream>
//Base case
if(in[i]=='\0'){
out[j] = '\0';
cout<<out<<",";
return;
//Rec Case
out[j] = in[i];
subsequences(in,out,i+1,j+1);
subsequences(in,out,i+1,j);
int main() {
char in[100];
cin>>in;
char out[100];
subsequences(in,out,0,0);
return 0;
if(y == 0)
return 0;
if(y > 0 )
if(y < 0 )
int main()
int x=5,y=-11;
cout<<multiply(x,y);
return 0;
#include<cstring>
if(n==0){
return 0;
int main(){
int n = strlen(a);
cout<<stringToInt(a,n)<<endl;
if(n==1 || n==2){
return n;
int main() {
//code
cin>>n;
cout<<noOfWays(n)<<endl;
return 0;