J'essaie d'implémenter un quicksort idiomatique in-situ en scala. Pour ce faire, je suis récursif sur les vues au lieu des paires d'index (gauche, droite). Cependant, je rencontre un problème en prenant une vue depuis une vue.Scala Array view 'flatmap'
Array(1, 2).view => IndexedSeqView[Int, Array[Int]]
Array(1, 2).view.view => IndexedSeqView[Int, IndexedSeqView[Int, Array[Int]]]
et ainsi de suite. Cela me laisse incapable de partitionner de façon récursive des vues de vues d'un tableau de base, car ma fonction récursive ne sait pas à quel type s'attendre. Existe-t-il un moyen de prendre des vues de sorte que la vue d'un IndexedSeqView [Int, Array [Int]] soit aussi une IndexedSeqView [Int, Array [Int]]?