C++ Articles - Page 437 of 719

Sort List in C++

Arnab Chakraborty
Updated on 30-Apr-2020 09:29:28

275 Views

Suppose we have a list, we have to sort this in O(n logn) time using constant space complexity, so if the list is like [4, 2, 1, 3], then it will be [1, 2, 3, 4]To solve this, we will follow these steps −Define a method for merging two lists in sorted, order, that method is merge(), this takes two lists l1 and l2.The sort list method will work like below −if head is null, or next of head is null, then return headslow := head, fast := head, and prev = nullwhile fast is not null and next of ... Read More

Reorder List in C++

Arnab Chakraborty
Updated on 30-Apr-2020 09:35:15

924 Views

Suppose we have a linked list like l1 -> l2 -> l3 -> l4 -> … -> l(n-1) -> ln. We have to rearrange this list into the form l1 -> ln -> l2 -> l(n - 1) -> … and so on. Here the constraint is that, we cannot modify the values in the list nodes, only the node itself may be changed. So for example, if the list is like [1, 2, 3, 4, 5], then the output will be [1, 5, 2, 4, 3]To solve this, we will follow these steps −Define a method called reverse to ... Read More

Flatten Binary Tree to Linked List in C++

Arnab Chakraborty
Updated on 30-Apr-2020 09:21:28

237 Views

Suppose we have a binary tree; we have to flatten it into linked list in place. So if the tree is like −The output tree will be −To solve this, we will follow these steps −ser prev := nullDefine a recursive function solve(), that will take root as input.if root is null, then returnsolve(right of root)solve(left of root)right of root := prev, left of root := nullprev := rootLet us see the following implementation to get better understanding −Example Live Demo#include using namespace std; class TreeNode{    public:    int val;    TreeNode *left, *right;    TreeNode(int data){     ... Read More

Thread functions in C/C++

Ayush Gupta
Updated on 02-Mar-2020 11:16:59

2K+ Views

In this tutorial, we will be discussing a program to understand thread functions in C/C++.Thread functions allow users to implement concurrent functions at the same time, which can either be dependent on each other for execution or independent.Example#include #include #include void* func(void* arg){    //detaching the current thread    pthread_detach(pthread_self());    printf("Inside the thread");    pthread_exit(NULL); } void fun(){    pthread_t ptid;    //creating a new thread    pthread_create(&ptid, NULL, &func, NULL);    printf("This line may be printed before thread terminates");    if(pthread_equal(ptid, pthread_self())       printf("Threads are equal");    else       printf("Threads are ... Read More

Templates and Static variables in C++

Ayush Gupta
Updated on 02-Mar-2020 11:13:22

605 Views

In this tutorial, we will be discussing a program to understand templates and static variables in C++.In case of function and class templates, each instance of the templates has its own local copy of the variables.Example Live Demo#include using namespace std; template void fun(const T& x){    static int i = 10;    cout

Template Specialization in C++ Program?

Ayush Gupta
Updated on 02-Mar-2020 11:11:13

184 Views

In this tutorial, we will be discussing a program to understand Template specialization in C++.Standard functions like sort() can be used with any data types and they behave the same with each of them. But if you want to set a special behaviour of the function for a particular data type (even user defined), we can use template specialization.Example Live Demo#include using namespace std; template void fun(T a) {    cout

Swapping of subranges from different containers in C++

Ayush Gupta
Updated on 02-Mar-2020 11:05:38

99 Views

In this tutorial, we will be discussing a program to understand swapping of subranges of different containers in C++.For this we will be provided with vectors and lists, and we need to swap some of their elements.Example Live Demo#include #include #include #include using namespace std; int main(){    vector v = { -10, -15, -30, 20, 500 };    list lt = { 10, 50, 30, 100, 50 };    swap_ranges(v.begin(), v.begin() + 3, lt.begin());    for (int n : v)       cout

How to sum two integers without using arithmetic operators in C/C++ Program?

Ayush Gupta
Updated on 02-Mar-2020 11:02:56

618 Views

In this tutorial, we will be discussing a program to understand how to sum two integers without using arithmetic operators in C/C++.For adding two integers without using arithmetic operators, we can do this with either using pointers or using bitwise operators.ExampleUsing pointers#include using namespace std; int sum(int a, int b){    int *p = &a;    return (int)&p[b]; } int main() {    int add = sum(2,3);    cout

How to store Data Triplet in a Vector in C++?

Ayush Gupta
Updated on 02-Mar-2020 10:56:12

651 Views

In this tutorial, we will be discussing a program to understand how to store a Data triplet in a vector in C++.To store three elements in a single cell of a vector we will creating a user defined structure and then make a vector from that user defined structure.Example Live Demo#include using namespace std; struct Test{    int x, y, z; }; int main(){    //creating a vector of user defined structure    vector myvec;    //inserting values    myvec.push_back({2, 31, 102});    myvec.push_back({5, 23, 114});    myvec.push_back({9, 10, 158});    int s = myvec.size();    for (int i=0;i

How to sort a Vector in descending order using STL in C++?

Ayush Gupta
Updated on 21-Feb-2025 16:27:08

635 Views

The problem is to sort a vector in descending order using C++'s Standard Template Library(STL). Sorting in descending order means rearranging the elements of the vector so that the largest elements come first, followed by smaller elements, all the way down to the smallest element at the end of the vector. Let's say we have the following vector of integers: vector v = {4, 2, 9, 1, 7}; We want to sort this vector so that the elements are arranged in descending order: v = {9, 7, 4, 2, 1}; In this article, we will show you how ... Read More

Advertisements