![]() |
VOOZH | about |
Lists are sequence containers that allow non-contiguous memory allocation. As compared to vector, the List has slow traversal, but once a position has been found, insertion and deletion is quick.
List Useful Functions:
1. emplace(position, value): This function is used to insert an element at the specified position.
2. emplace_back(value) :- This function adds value at end of list. It is different from push_back() by the fact that it directly creates elements at position, whereas push_back() first makes a temporary copy and copies from there. emplace_back() is faster in implementation than push_back() in most situations.
3. emplace_front(value): This function adds value at beginning of the List. It is different from push_front() by the fact that it directly creates elements at position, whereas push_front() first makes a temporary copy and copies from there. emplace_front() is faster in implementation than push_front() in most situations.
List after emplace_back operation is : 1 2 3 4 5 List after emplace_front operation is : 50 40 30 20 10 1 2 3 4 5 List after emplace operation is : 50 100 40 30 20 10 1 2 3 4 5
Time Complexity: O(1)
Auxiliary Space: O(1)
4. merge(list2): This function is used to merge list2 with list1. If both the lists are in sorted order, then the resulting list is also sorted.
5. remove_if(condition): This function removes the element from the List on the basis of the condition given in its argument.
list1 after merge operation is : 1 2 2 3 4 6 list1 after remove_if operation is : 2 2 4 6
Time Complexity: O(1)
Auxiliary Space: O(1)
6. unique(): This function is used to delete the repeated occurrences of the number. List has to be sorted for this function to get executed.
7. splice(position, list2): This function is used to transfer elements from one list into another.
list1 before unique operation is : 1 1 1 2 2 3 3 4 list1 after unique operation is : 1 2 3 4 list1 after splice operation is : 1 2 4 6 2 3 4
Time Complexity: O(1)
Auxiliary Space: O(1)
8. swap(list2): This function is used to swap one list element with other.
The contents of 1st list before swapping are : 1 2 3 4 The contents of 2nd list before swapping are : 2 4 6 The contents of 1st list after swapping are : 2 4 6 The contents of 2nd list after swapping are : 1 2 3 4
Time Complexity: O(1)
Auxiliary Space: O(1)
9. reverse(): This function is used to reverse the order of elements in a list.
Original list: 1 2 3 4 5 Reversed list: 5 4 3 2 1
Time Complexity: O(1) where n is the number of elements in the list. This is because the function simply iterates over the list once and swaps the pointers for each element.
Auxiliary Space: O(1) where it does not use any extra memory beyond a few temporary variables used for swapping pointers.