Tribonacci Series in JavaScript

AmitDiwan
Updated on 18-Jan-2021 04:40:12

1K+ Views

Tribonacci Series:The tribonacci sequence is a generalization of the Fibonacci sequence where each term is the sum of the three preceding terms.For example, the first few terms of the tribonacci series are −0, 1, 1, 2, 4, 7, 13, 24, 44, 81, 149We are required to write a JavaScript function that takes in a number, say num, as the only argument.The function should then return an array of num elements, containing the first num terms of the tribonacci series.For example:f(6) = 0, ExampleFollowing is the code:const tribonacci = (num = 1) => {    if (num === 0 || num ... Read More

Diameter of a Binary Tree in O(N) in C++

AmitDiwan
Updated on 16-Jan-2021 10:58:03

419 Views

The diameter of a binary tree is the (left_height + right_height + 1) for each node. So in this method we will calculate (left_height + right_height + 1) for each node and update the result . The time complexity here stays O(n).Let us first define the struct that would represent a tree node that contains the data and its left and right node child. If this is the first node to be created then it’s a root node otherwise a child node.struct Node {    int data;    struct Node *leftChild, *rightChild; };Next we create our newNode(int data) function that ... Read More

Diagonally Dominant Matrix in C++

AmitDiwan
Updated on 16-Jan-2021 10:34:57

412 Views

A matrix is said to be diagonally dominant matrix if for every matrix row, the diagonal entry magnitude of the row is larger than or equal to the sum of the magnitudes of every other non-diagonal entry in that row.Let us first define a constant int variable N with value 3 which represents our matrix dimensions.const int N = 3;The isDDM(int mat[N][N], int n) is a Boolean function that takes a copy of our matrix and the size of our matrix. Inside we iterate the rows and columns of our matrix using nested for loop. We then find the sum ... Read More

Diagonal Traversal of Binary Tree in C++

AmitDiwan
Updated on 16-Jan-2021 10:28:18

280 Views

To consider the nodes that are passing between lines of slope -1. The diagonal traversal of the binary tree will be to traverse and print all those nodes present between these lines.Let us first define the struct that would represent a tree node that contains the data and its left and right node child. If this is the first node to be created then it’s a root node otherwise a child node.struct Node {    int data;    struct Node *leftChild, *rightChild; };Next we create our createNode(int data) function that takes an int value and assign it to the data ... Read More

Diagonal Sum of a Binary Tree in C++

AmitDiwan
Updated on 16-Jan-2021 10:24:39

225 Views

To consider the nodes that are passing between lines of slope -1. The diagonal sum of the binary tree will be calculated by the sum of all nodes data that are present between these lines of reference.Let us first define the struct that would represent a tree node that contains the data and its left and right node child. If this is the first node to be created then it’s a root node otherwise a child node.struct Node {    int data;    struct Node *leftChild, *rightChild; };Next we create our createNode(int data) function that takes an int value and ... Read More

Diagonal of a Regular Pentagon in C++

AmitDiwan
Updated on 16-Jan-2021 10:19:00

150 Views

To find the length for the diagonal of a regular pentagon we put the value of side in (1+√5)side/2 = (1+2.24)side/2.ExampleLet us see the following implementation to get the regular Heptagon diagonal from its side − Live Demo#include using namespace std; int main(){    float side = 5;    if (side < 0)       return -1;    float diagonal = (1+2.24) *(side/2);    cout

Diagonal of a Regular Hexagon in C++

AmitDiwan
Updated on 16-Jan-2021 10:16:44

187 Views

The regular hexagons are comprised of six equilateral triangles so the diagonal of a regular hexagon would be 2*side.ExampleLet us see the following implementation to get the regular Heptagon diagonal from its side − Live Demo#include using namespace std; int main(){    float side = 12;    if (side < 0)       return -1;    float diagonal = 2*side;    cout

DFA for Strings Not Ending with 'a' in C++

AmitDiwan
Updated on 16-Jan-2021 10:14:31

400 Views

To use Deterministic Finite Automaton(DFA) to find strings that aren’t ending with the substring “THE”. We should keep that in mind that any variation of the substring “THE” like “tHe”, “The” ,”ThE” etc should not be at the end of the string.First, we define our dfa variable and initialise it to 0 which keeps our track of state. It is incremented on each character matched.int dfa = 0;The begin(char c) method takes a character and checks if its ‘t’ or ‘T’ and go to first state i.e 1.void begin(char c){    if (c == 't' || c == 'T')   ... Read More

DFA Based Division in C++

AmitDiwan
Updated on 16-Jan-2021 10:08:29

282 Views

The Deterministic Finite Automaton(DFA) is used for checking if a number is divisible by another number k or not. The algorithm is useful because it can also find the remainder if the number isn’t divisible.In DFA based division we build a DFA table with k states. We consider binary representation of the number so there is only 0 and 1 in each state in DFA.The createTransTable(int k, int transTable[][2]) function is used for creating the transTable and storing the states in it. It takes the number k by which the number is to be divisible and transTable[][2] which is an ... Read More

Determine Position of Third Person on Regular N-Sided Polygon in C++

AmitDiwan
Updated on 16-Jan-2021 10:01:57

157 Views

In a N sided polygon if two children are standing on A and B vertex then we need to determine the vertex number where another person should stand so that there should be minimum number of jumps required by that person to reach A and B both.Two conditions to note here are that the polygon vertices are numbered in a clockwise manner and we will always choose the least numbered vertex in case there are multiple answers.The vertexPosition(int sides, int vertexA, int vertexB) takes the no. of sides of the polygon and the position of vertex A and B. The ... Read More

Advertisements