C++ std::copy_n with std::list














































C++ std::copy_n with std::list



Description:

This C++ article is about the copy_n() algorithm function with std::vector container.
It is an STL algorithm in <algorithm> header file.It gives the freedom to choose how many
elements have to be copied in destination container

 
copy_n() has one definition:

template <class InputIterator, class Size, class OutputIterator>
OutputIterator copy_n (InputIterator first, Size n, OutputIterator result);


Return type :
An iterator to the end of the destination range where elements have been copied.

Working: The copy_n( ) function takes 3 parameters, two iterators 'first' ,n , result .

first : The pointer to the beginning of source container, from where elements have to be
started copying.
n:Integer specifying how many numbers would be copied to destination container starting
from n.If a negative number is entered, no operation is performed.
result:The pointer to the beginning of destination container, to where elements have to
be started copying.

Implementation: 

#include<iostream>
#include<algorithm> // copy_n()
#include<list>

int main()
{

   std::list<int> lis = {1,2,3,4,5,6,7,8,9,10};
   std::list<int> lis_size (lis.size());

   // using copy_n()
    auto it = copy_n(lis.begin(), 5 , lis_size.begin());
    lis_size.resize(std::distance(lis_size.begin(),it));

   // printing new list
   std::cout << "element contains:";
   for (int& x: lis_size) std::cout << ' ' << x;
   std::cout << '\n';

}

Output:
element contains: 1 2 3 4 5


More Articles of Mandeep Sheoran:

Name Views Likes
C++ program to insert an element into binary tree 6883 19
C++ program to find an element into binary tree 815 16
C++ std::is_void 615 15
C++ program to find the closest element in binary search tree 1015 19
C++ program to replace every element with the least greater element on its right 614 12
C++ program to delete an element into binary tree 824 24
C++ program to find maximum element between two nodes of binary search tree 740 20
C++ std::remove_copy_if with std::vectors 597 11
C++ program to print duplicate elements from the binary search tree 3097 15
C++ program to find depth of the deepest odd level node in binary tree 614 23
C++ program to remove duplicate elements from the binary search tree 1755 20
C++ std::rotate_copy with std::vector 584 14
C++ std::copy_n with std::vector 671 22
C++ std::copy_if with std::vector 1660 18
C++ program to print all the elements of binary search tree 7983 22
C++ std::reverse_copy with std::list 640 18
C++ program to print all the elements of binary tree 1251 18
C++ program to print all full nodes in a binary tree 609 25
C++ program to find sink odd nodes in binary tree 610 15
C++ std::is_copy_assignable 641 22
C++ program to check whether a binary tree is a full binary tree or not using recursion 664 19
C++ std::is_copy_constructible 663 27
C++ program to delete an element into binary search tree 3196 18
C++ std::reverse_copy with std::vector 526 18
C++ std::rotate with std::vector 798 15
C++ program to check for symmetric binary tree using recursion 630 25
C++ program to maximum sum from a tree with adjacent levels not allowed 593 15
C++ std::copy_n with std::list 641 21
C++ program to check if two trees are identical using recursion 587 15
C++ std::copy_n 966 21
C++ std::copy_if with std::list 1131 19
C++ program to print the nodes at odd levels of a tree 601 13
C++ program to find lowest common ancestor in a binary tree 718 29
C++ program to find depth of the deepest odd level leaf node 529 13
C++ std::remove_copy_if with std::list 718 20
C++ program to add all greater values to every node in a given binary search tree 683 15

Comments