Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

PHP - Ds Deque::merge() Function



ThePHP Ds\Deque::merge()function merges two deques and retrieves the result of adding all given values to a deque.

You can merge an empty ([]) deque with a non-empty deque and vice versa. Usually, merging two deques using loops takes a lot of time, and the complexity might be higher than expected. To manage this, PHP provides themerge()function to quickly merge two deques.

Syntax

Following is the syntax of the PHP Ds\Deque::merge() function −

public Ds\Deque::merge(mixed $values): Ds\Deque

Parameters

Following is the parameter of this function −

  • values − It represents a traversable object or an array.

Return value

This function returns the result of adding all given values to the deque.

Example 1

The following is the basic example of the PHP Ds\Deque::merge() function −

<?php
   $deque1 = new \Ds\Deque([11, 12, 13, 14]);
   echo "The first deque elements are: \n";
   print_r($deque1);
   $deque2 = new \Ds\Deque([15, 16]);
   echo "The second deque elements are: \n";
   print_r($deque2);
   echo "The result after merge: \n";
   print_r($deque1->merge($deque2));
?>

Output

The above program produces the following output −

The first deque elements are:
Ds\Deque Object
(
    [0] => 11
    [1] => 12
    [2] => 13
    [3] => 14
)
The second deque elements are:
Ds\Deque Object
(
    [0] => 15
    [1] => 16
)
The result after merge:
Ds\Deque Object
(
    [0] => 11
    [1] => 12
    [2] => 13
    [3] => 14
    [4] => 15
    [5] => 16
)

Example 2

Merging an empty([]) deque with the non-empty deque.

Following is another example of the PHP Ds\Deque::merge() function. We use this function to merge an empty deque ([]) with the non-empty deque ([10, 20]) −

<?php
   $deque1 = new \Ds\Deque([]);
   echo "The first deque elements are: \n";
   print_r($deque1);
   $deque2 = new \Ds\Deque([10, 20]);
   echo "The second deque elements are: \n";
   print_r($deque2);
   echo "The result after merge: \n";
   print_r($deque1->merge($deque2));
?>

Output

After executing the above program, it will display the following output −

The first deque elements are:
Ds\Deque Object
(
)
The second deque elements are:
Ds\Deque Object
(
    [0] => 10
    [1] => 20
)
The result after merge:
Ds\Deque Object
(
    [0] => 10
    [1] => 20
)

Example 3

Merging two empty ([]) deques.

In the example below, we use the merge() function to merge the two empty deques ([]) and ([]) as follows:

<?php
   $deque1 = new \Ds\Deque([]);
   echo "The first deque elements are: \n";
   print_r($deque1);
   $deque2 = new \Ds\Deque([]);
   echo "The second deque elements are: \n";
   print_r($deque2);
   echo "The result after merge: \n";
   print_r($deque1->merge($deque2));
?>

Output

On executing the above program, it generates the following output −

The first deque elements are:
Ds\Deque Object
(
)
The second deque elements are:
Ds\Deque Object
(
)
The result after merge:
Ds\Deque Object
(
)
Advertisements