Found 1401 Articles for C

Print reverse of a Linked List without extra space and modification in C Program.

Sunidhi Bansal
Updated on 22-Aug-2019 05:57:17

333 Views

The task is to print the nodes starting from the end of the linked list without using extra space which means there shouldn’t be any extra variable instead the head pointer pointing the first node will be moved.ExampleInput: 10 21 33 42 89 Output: 89 42 33 21 10There can be many solutions to print the linked list in reverse order, like recursive approach (use extra space), reverse the linked list(requires modification in the given Linked List), pushing the elements on a stack and then pop and display the elements one by one(requires space O(n)), but these solutions seem to ... Read More

Binary Search using pthread in C Program?

Arnab Chakraborty
Updated on 20-Aug-2019 13:18:47

432 Views

We know that the binary search approach is one of the most suitable and effective sorting algorithm. This works on sorted sequence. The algorithm is simple, it simply finds the element from middle, then divide the list by two parts, and moves either towards the left sublist, or right sublist.We know the algorithm of it. Now we will see how to use binary search technique in multithreading environment. The number of threads depends on number of cores are present in the system. Let us see the code to get the idea.Example#include #define MAX 16 #define MAX_THREAD 4 using namespace ... Read More

Binary representation of next greater number with same number of 1’s and 0’s in C Program?

Arnab Chakraborty
Updated on 20-Aug-2019 13:15:25

225 Views

Suppose we have one binary number, that is representation of a number n. We have to find binary representation of a number which is smallest but larger than n, and it also has same number of 0s and 1s. So if the number is 1011 (11 in decimal), then the output will be 1101 (13). This problem can be found using the next-permutation calculation. Let us see the algorithm to get the idea.AlgorithmnextBin(bin) −Begin    len := length of the bin    for i in range len-2, down to 1, do       if bin[i] is 0 and bin[i+1] ... Read More

BFS using vectors & queue as per the algorithm of CLRS in C Program?

Arnab Chakraborty
Updated on 20-Aug-2019 13:10:19

255 Views

In CLRS book the BFS algorithm is described using vectors and queue. We have to implement that algorithm using C++ STL. Let us see the algorithm at first.AlgorithmBFS(G, s) −begin    for each vertex u in G.V - {s}, do       u.color := white       u.d := infinity       u.p := NIL    done    s.color := green    s.d := 0    s.p := NIL    Q := NULL    insert s into Q    while Q is not null, do       u = delete from Q       for ... Read More

Betrothed numbers in C Program?

Arnab Chakraborty
Updated on 20-Aug-2019 13:06:54

419 Views

Here we will see the Betrothed number. This is a pair of numbers, such that the sum of the proper divisors of one number is one more than the other number. We have to find these pairsFor an example, the pair is like (48, 75). So the divisors of 48 is {1, 2, 3, 4, 6, 8, 12, 16, 24} and sum is 76. Similarly, the divisors of 75 is {1, 3, 5, 15, 25} so sum is 49.AlgorithmBetrothedPairs (n) −begin    for num in range 1 to n, do       sum := 1       for ... Read More

Baum Sweet Sequence in C Program?

Arnab Chakraborty
Updated on 20-Aug-2019 14:00:18

111 Views

Here we will see the Baum Sweet Sequence. This sequence is one binary sequence. If a number n has an odd number of contiguous 0s, then nth bit will be 0, otherwise nth bit will be 1.We have a natural number n. Our task is to find the n-th term of Baum Sweet sequence. So we have to check whether it has any consecutive block of zeros of odd length.If the number is 4 then the term will be 1, because 4 is 100. So it has two (even) number of zeros.AlgorithmBaumSweetSeqTerm (G, s) −begin    define bit sequence seq ... Read More

Auxiliary Space with Recursive Functions in C Program?

Arnab Chakraborty
Updated on 20-Aug-2019 13:00:00

265 Views

Here we will see how the auxiliary space is required for recursive function call. And how it is differing from the normal function call?Suppose we have one function like below −long fact(int n){    if(n == 0 || n == 1)       return 1;    return n * fact(n-1); }This function is recursive function. When we call it like fact(5), then it will store addresses inside the stack like below −fact(5) ---> fact(4) ---> fact(3) ---> fact(2) ---> fact(1)As the recursive functions are calling itself again and again, addresses are added into stack. So if the function is ... Read More

Array range queries for elements with frequency same as value in C Program?

Arnab Chakraborty
Updated on 02-Jul-2020 06:56:57

194 Views

Here we will see one interesting problem. We have one array with N elements. We have to perform one query Q as follows −The Q(start, end) indicates that number of times a number ‘p’ is occurred exactly ‘p’ number of times from start to end.So if the array is like: {1, 5, 2, 3, 1, 3, 5, 7, 3, 9, 8}, and queries are −Q(1, 8) − Here the 1 is present once, and 3 is present 3 times. So the answer is 2Q(0, 2) − Here the 1 is present once. So the answer is 1Algorithmquery(s, e) −Begin   ... Read More

Area of the biggest possible rhombus that can be inscribed in a rectangle in C Program?

Arnab Chakraborty
Updated on 20-Aug-2019 12:53:32

66 Views

Here we will see one problem, where one rectangle is given. We have to find the area of largest rhombus that can be inscribed in the rectangle. The diagram will be look like below −The length of the rectangle is ‘l’ and breadth is ‘b’ So the area of the rhombus is −Source Code#include #include using namespace std; float area(float l, float b) {    if (l < 0 || b < 0) //if the values are negative it is invalid       return -1;    float area = (l*b) /2;    return area; } int main() {    float l = 20.0, b = 7;    cout

Area of squares formed by joining mid points repeatedly in C Program?

Arnab Chakraborty
Updated on 20-Aug-2019 12:44:02

74 Views

Suppose we have one square whose side is ‘a’. We will make more squares by attaching the mid-points of the squares repeatedly. The number of repetition is n times. We have to find the area of nth square.As the side of the outer square is ‘a’, then area isNow using Pythagorean theorem, we can get the area of the second rectangle is −Similarly, area of 3rd square is −Using this we can understand that the area of nth square is −Example#include #include using namespace std; float area(float a, float n) {    if (a < 0 ) //if ... Read More

Advertisements