Carregar apresentação
A apresentação está carregando. Por favor, espere
1
Programação Funcional
Prof. Carlos Alberto
2
Haskell: Listas Prof. Carlos Alberto
3
Lista Uma lista é uma estrutura de dados que representa uma coleção de objetos homogêneos em sequência; São estruturas sequenciais; Em Haskell uma expressão lista é formada por uma sequência de expressões separadas por vírgula e delimitada por colchetes;
4
Lista Uma lista é composta sempre de dois segmentos, exceto quando está vazia; Esses segmentos são: Cabeça (head): primeiro elemento da lista; Corpo ou calda (tail): demais elementos da lista.
5
Lista Estruturalmente uma lista pode ser de duas formas:
lista vazia – [ ] não contém nenhum elemento é denotada pelo construtor constante [ ] lista não vazia – (x:xs) contém pelo menos um elemento é formada por uma cabeça e por uma cauda
6
Lista Uma lista pode ser construída pelo construtor ‘:’ (cons), um operador binário infixo com associatividade à direita o operando da esquerda é a cabeça da lista o operando da direita é a cauda da lista Por exemplo, a lista formada pela sequência dos valores 1, 8 e 6 pode ser escrita como
7
Lista A lista vazia “[ ]” está presente em qualquer lista, e o último elemento sempre aponta para essa lista “[ ]”; Ao contrário das tuplas, em listas pode-se acrescentar novos elementos;
8
Lista Em Haskell strings são listas de caracteres. O tipo String é um sinônimo para o tipo [Char]
9
Lista Exemplo 1: Calcular o comprimento de uma lista.
10
Lista Exemplo 2: Verificar se um dado elemento se encontra na lista.
11
Lista Uma alternativa para construir e manipular listas é a definição por compreensão de listas; A compreensão de listas é feita com um construtor de listas que utiliza conceitos e notações de teoria dos conjuntos.
12
Lista Exemplo de compreensão de listas
13
Lista Os geradores de listas podem combinar mais de uma expressão. Exemplo:
14
Haskell: Listas Prof. Carlos Alberto
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.