Difference between revisions of "User:Marcelo.parrela"
Jump to navigation
Jump to search
(Quicksort - An other Implementation) |
(Blanked the page) |
||
(One intermediate revision by the same user not shown) | |||
Line 1: | Line 1: | ||
− | <pre style="border: solid 1 black;"> |
||
− | -- by Marcelo Parrela (marcelo.parrela@gmail.com) |
||
− | quicksort' [] = [] |
||
− | quicksort' (a:as) = quicksort' l1 ++ a : quicksort' l2 |
||
− | where |
||
− | (l1,l2) = separate as a [] [] |
||
− | <i style="color: blue;">-- lê a lista e a separa em duas: l1 para os elementos</i> |
||
− | <i style="color: blue;">-- menores ou iguais ao pivot e l2 para os demais</i> |
||
− | separate [] _ a b = (a,b) |
||
− | separate (l:ls) a l1 l2 |
||
− | | l <= a = separate ls a l1' l2 |
||
− | | otherwise = separate ls a l1 l2' |
||
− | where |
||
− | l1' = l1++[l] |
||
− | l2' = l2++[l] |
||
− | |||
− | </pre> |