Merging two arrays in a uniform order
aberba via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Fri Jan 13 11:47:38 PST 2017
On Friday, 13 January 2017 at 12:00:41 UTC, ZombineDev wrote:
> On Friday, 13 January 2017 at 06:32:02 UTC, aberba wrote:
>> Unlike array1 + array2, how can i merge arrays such that:
>>
>> [a1, a1, a2, a1, a1, a2, a1] //uniform order
>>
>> where a1 = child of array1,
>> a2 = child of array2
>>
>> using a built-in function/algorithm (is/are there anything(s)
>> in Phobos for this?). No manual approach.
>
> void main()
> {
> import std.stdio : writeln;
> import std.range : refRange, roundRobin;
>
> auto array1 = [1, 2, 3, 4, 5];
> auto array2 = [11, 12, 13, 14, 15];
>
> auto array1Ref = refRange(&array1);
>
> roundRobin(array1Ref, array1Ref, array2)
> .writeln();
> }
>
> elements: [ 1, 2, 11, 3, 4, 12, 5, 13, 14, 15 ]
> indexes: a11 a12 a21 a13 a14 a22 a15 a23 a24 a25
awesome. roundRobin? :)
More information about the Digitalmars-d-learn
mailing list