Czy jest jakaś funkcja w haskell, która ocenia (filtr p xs, filtr (not.p) xs) w jednym przejściu listy (tutaj są dwa) czy jest jakiś wspólny mianownik w programowaniu funkcjonalnym dla tego rodzaju funkcji?Standardowa nazwa dla (filtr p xs, filtr (not.p) xs)
10
A
Odpowiedz
33
najpierw spojrzeć na tego typu, że trzeba:
Prelude> :t \p xs -> (filter p xs, filter (not . p) xs)
\p xs -> (filter p xs, filter (not . p) xs)
:: (a -> Bool) -> [a] -> ([a], [a])
Prelude> :hoogle (a -> Bool) -> [a] -> ([a], [a])
Prelude break :: (a -> Bool) -> [a] -> ([a], [a])
Prelude span :: (a -> Bool) -> [a] -> ([a], [a])
Data.List break :: (a -> Bool) -> [a] -> ([a], [a])
Data.List partition :: (a -> Bool) -> [a] -> ([a], [a])
Data.List span :: (a -> Bool) -> [a] -> ([a], [a])
teraz wypróbować funkcje:
Prelude> break odd [1..10]
([],[1,2,3,4,5,6,7,8,9,10])
Prelude> span odd [1..10]
([1],[2,3,4,5,6,7,8,9,10])
Prelude> import Data.List
Prelude Data.List> partition odd [1..10]
([1,3,5,7,9],[2,4,6,8,10])
3
Haskell nazywa to partition
.
0
Myślę, że chcesz Data.List.partition np.
partition (>2) [1,2,3,4,5]
skutkuje ([3,4,5], [1,2])
Powiązane problemy
- 1. Skąd pochodzi nazwa "xs" dla dopasowania wzorca?
- 2. Użycie xs: extension & xs: restriction together?
- 3. Filtr analizy porównawczej i partycja
- 4. JSON :: XS "Usage" rechot
- 5. Tworzenie wątków zwrotnych w XS
- 6. Twitter Bootstrap Drukuje w XS
- 7. Perl XS i Inline :: C
- 8. Dlaczego obie mapy (^ 2) xs i mapa (2 ^) xs działają zgodnie z oczekiwaniami w Haskell?
- 9. Jak zmusić WCF do użycia xs: Wszystko zamiast xs: Sequence, aby zamawianie elementów SOAP było nieistotne?
- 10. Filtr IO [Maybe String] na IO [String]
- 11. Python/Mydliny: nie Rodzaj znaleziono: 'xs: complexType'
- 12. Ignoruj kolejność elementów za pomocą xs: rozszerzenie
- 13. `col-xs- *` nie działa w Bootstrap 4
- 14. Dlaczego program xsd.exe generuje właściwość string dla xs: integer?
- 15. Filtr wielopoziomowy obejmuje filtr z LoopBack JS
- 16. Filtr serwletów dla wszystkich żądań
- 17. AngularJS: zastosuj filtr dla ngStyle
- 18. filtr rynku dla klasy pamięci
- 19. Filtr listy ListView dla Androida
- 20. Czy można umieścić filtr globalny poza p: dataTable?
- 21. Filtr String
- 22. Filtr regex SPARQL
- 23. LINQ - filtr kolekcji dzieci
- 24. Filtr Django z regexem
- 25. Domyślny filtr SQLAlchemy
- 26. Jak ustawić filtr w log4j.xml
- 27. Entity Framework: filtr warunkowy
- 28. Filtr mapy szablonów płynów
- 29. Dostęp Filtr VBA
- 30. Filtr site.related_posts w Jekyll
+1 za pokazanie, jak znaleźć to samemu. –
Kto przygotuje stronę "Pozwól mi to zrobić dla Ciebie"? –
Oto jak uzyskać komendę ': hoogle' w ghci: http://www.haskell.org/haskellwiki/Hoogle#GHCi_Integration – amindfv