Haskell — Selecció

Implementeu una funció select :: Ord a => [a] -> Int -> a que, donada una llista d’elements xs i un enter kk amb 1k1\le k\le length xs, retorni l’element que es trobaria a la kk-èsima posició de la llista ordenada.

Per exemple, en una llista amb nn elements, per a k=1k=1, cal retornar el mínim dels elements; per a k=nk=n, cal retornar el màxim dels elements i per a k=n/2k=n/2 cal retornar la mediana dels elements.

Ordenar tota la llista i indexar hauria de ser massa lent. Us suggerim utilitzar l’algorisme de mediana de medianes.

Informació del problema

Autoria: Jordi Petit

Generació: 2026-02-03T17:04:56.156Z

© Jutge.org, 2006–2026.
https://jutge.org