Как я могу чередовать элементы двух списков в scala

Я хотел бы объединить два списка произвольной длины таким образом, чтобы элементы из 2-го списка вставлялись после каждого n --го элемента в 1-й список. Если длина 1-го списка меньше n, вставка не выполняется.

Итак, имея

val a = List(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15)
val b = List(101,102,103)
val n = 3 

Я хочу, чтобы результирующий список выглядел так:

List(1,2,3,101,4,5,6,102,7,8,9,103,10,11,12,13,14,15)

У меня это работает с использованием foldLeftна a, но мне интересно, как та же логика может быть реализована с помощью Scalaz?

Спасибо всем за ответы. Все они были мне полезны!

6
задан marcin 6 July 2012 в 19:11
поделиться