Vetores e Matrizes
Vetores e Matrizes
Salvador
2015
Estrutura de Dados Para facilitar a manipulação de muitos dados ao mesmo tempo uma estrutura de dados homogênea é disponibilizada. Para tais implementações usa-se vetores e matrizes. Vetores são posições contíguas de memória onde o armazenamento é realizado de modo sequencial. Já as matrizes são coleções de dados que podem conter mais de uma dimensão, matrizes planas, que são representadas por linhas e colunas (as mesmas usadas em matemática) e matrizes de duas ou mais dimensões. Tente usar seu poder de abstração para visualizar uma matriz e enxergá-la como um cruzamento de linhas e colunas, onde cada célula representa uma porção de memoria para armazenar um dado elemento. Todos os tipos de dados apresentados nos posts anteriores são suportados por vetores e matrizes, os quais podem ser de inteiros, reais ou caracteres (chamados usualmente de strings).
Vetores
Um vetor (= array) é uma estrutura de dados que armazena uma sequência de objetos, todos do mesmo tipo, em posições consecutivas da memória rápida (RAM) do computador. Esta página estuda os problemas de procurar um objeto em um vetor, inserir um novo objeto no vetor, e remover um elemento do vetor. Esses problemas servem de pretexto para exibir exemplos de algoritmos recursivos e para ilustrar os conceitos de correção, eficiência e elegância de algoritmos. Os três problemas — busca, inserção e remoção — reaparecerão, em outros contextos, nas outras páginas deste sítio. Imagine que temos uma longa lista de números (de telefones, por exemplo) armazenada num vetor v. O espaço reservado para o vetor pode ter sido criado pela declaração int v[N]; sendo N uma constante (possivelmente definida por um #define). Se a lista de números está armazenada nas posições 0, 1, … , n-1 do vetor, diremos que v[0..n-1] é um vetor de inteiros.
É claro que devemos ter 0 ≤ n ≤ N. Se n == 0, o vetor v[0..n-1] está vazio. Se n == N, o vetor está