Matriz na estrutura de dados: o que é, matrizes Operações [Exemplos]
O que é array na estrutura de dados?
An ordem é uma estrutura de dados para armazenar mais de um item de dados que possui um tipo de dados semelhante. Os itens de um array são alocados em locais de memória adjacentes. Esses locais de memória são chamados elementos dessa matriz. O número total de elementos em uma matriz é chamado comprimento.
Os detalhes de um array são acessados sobre sua posição. Esta referência é chamada índice or subscrito.
Conceito de Matriz

O diagrama acima ilustra que:
- Uma matriz é um contêiner de elementos.
- Os elementos têm um valor e tipo de dados específicos, como “ABC”, TRUE ou FALSE, etc.
- Cada elemento também possui seu próprio índice, que é usado para acessar o elemento.
Observação:
- Os elementos são armazenados em locais de memória contíguos.
- Um índice é sempre menor que o número total de itens do array.
- Em termos de sintaxe, qualquer variável declarada como um array pode armazenar vários valores.
- Quase todas as linguagens têm a mesma compreensão de arrays, mas possuem maneiras diferentes de declará-los e inicializá-los.
- No entanto, três partes sempre permanecerão comuns em todas as inicializações, ou seja, o nome do array, os elementos e o tipo de dados dos elementos.
O diagrama a seguir ilustra a sintaxe de declaração de um matriz em Python e C++ apresentar que a compreensão permanece a mesma, embora a sintaxe possa variar ligeiramente em diferentes idiomas.
- Nome da matriz: necessário para fácil referência à coleção de elementos
- Tipo de dados: necessário para verificação de tipo e integridade de dados
- Elementos: estes são os valores de dados presentes em uma matriz
Por que precisamos de matrizes?
Aqui estão alguns motivos para usar arrays na estrutura de dados:
- Matrizes são melhores para armazenar vários valores em uma única variável
- Matrizes são melhores no processamento de muitos valores com facilidade e rapidez
- Classificar e pesquisar os valores é mais fácil em arrays
Criando uma matriz em Python
In Python, arrays são diferentes de listas; listas podem ter itens de array de tipos de dados, enquanto arrays só podem ter itens do mesmo tipo de dados.
Python possui um módulo separado para lidar com arrays chamado array, que você precisa importar antes de começar a trabalhar neles.
Observação: A matriz deve conter números reais como inteiros e flutuantes, sem strings permitidas.
O código a seguir ilustra como você pode criar uma matriz de números inteiros em python para armazenar o saldo da conta:
import array
balance = array.array('i', [300,200,100])
print(balance)
Maneiras de declarar um array em Python
Você pode declarar um array em Python ao inicializá-lo usando a seguinte sintaxe.
arrayName = array.array(type code for data type, [array,items])
A imagem a seguir explica a sintaxe.
- Identificar: especifique um nome como normalmente você faz para variáveis
- Módulo: Python possui um módulo especial para criação de arrays, chamado “array” – você deve importá-lo antes de usá-lo
- Forma: o módulo array possui um método para inicializar o array. São necessários dois argumentos, typecode e elementos.
- Código tipo: especifique o tipo de dados usando os códigos de tipo disponíveis (veja a lista abaixo)
- elementos: especifique os elementos da matriz entre colchetes, por exemplo [130,450,103]
A tabela a seguir ilustra os códigos de tipo disponíveis para tipos de dados suportados:
| Digite o código | Tipo C | Python Formato | Tamanho mínimo em bytes |
|---|---|---|---|
| 'c' | carbonizar | personagem | 1 |
| 'B' | caracter não identifcado | int | 1 |
| 'b' | char assinado | int | 1 |
| 'você' | Py_UNICODE | Caractere Unicode | 2 |
| 'h' | assinado brevemente | int | 2 |
| 'H' | curto sem sinal | int | 2 |
| 'Eu' | int assinado | int | 2 |
| 'EU' | int sem sinal | longo | 2 |
| 'eu' | assinado por muito tempo | int | 4 |
| 'EU' | longo sem sinal | longo | 4 |
| 'f' | flutuar | flutuar | 4 |
| 'd' | duplo | flutuar | 8 |
Como acessar um valor específico do array?
Você pode acessar qualquer item do array usando seu índice.
Sintaxe
arrayName[indexNum]
Exemplo:
balance[1]
A imagem a seguir ilustra o conceito básico de acesso a itens de arrays por seu índice.
Aqui acessamos o segundo valor do array usando seu índice, que é 1. A saída disso será 200, que é basicamente o segundo valor do array balanceado.
import array
balance = array.array('i', [300,200,100])
print(balance[1])
SAÍDA
200
Ordem Operações
O módulo de matriz de Python tem funções separadas para executar operações de array. Este é um método destrutivo de operar com arrays, o que significa que a modificação será salva na variável array.
inserção
Com esta operação, você pode inserir um ou mais itens em um array no início, no final ou em qualquer índice do array. Este método espera dois argumentos, índice e valor.
Sintaxe
arrayName.insert(index, value)
Exemplo:
Vamos adicionar um novo valor logo após o segundo item do array. Atualmente, nossa matriz de saldo tem três itens 300, 200 e 100. Qual é o índice do segundo item da matriz com valor 200 se você disser 1.
Para inserir o novo valor logo “após” o índice 1, você precisa fazer referência ao índice 2 em seu método de inserção, assim:
import array
balance = array.array('i', [300,200,100])
balance.insert(2, 150)
Agora, para verificar se o novo valor foi inserido, digite o nome do array e pressione Enter no teclado:
import array
balance = array.array('i', [300,200,100])
balance.insert(2, 150)
print(balance)
SAÍDA
array('i', [300,200,150,100])
Apagar
Com esta operação, você pode excluir um item de um array por valor. Este método aceita apenas um argumento, valor. Depois de executar este método, os itens da matriz são reorganizados e os índices são reatribuídos.
Sintaxe
arrayName.remove(value)
Exemplo:
Vamos remover o valor 150 do array. Atualmente, nosso array de saldo possui quatro itens 300, 200, 150 e 100. Portanto, para remover 150 do array, só precisamos digitar 150 dentro do argumento do método. Simples, certo?
import array
balance = array.array('i', [300,200,100])
balance.insert(2, 150)
print(balance)
balance.remove(150)
Agora, para verificar se o valor foi deletado, digite o nome do array e pressione Enter no teclado:
import array
balance = array.array('i', [300,200,100])
balance.insert(2, 150)
print(balance)
balance.remove(150)
print(balance)
SAÍDA
array('i', [300,200,100])
Pesquisar
Com esta operação, você pode procurar um item em um array com base em seu valor. Este método aceita apenas um argumento, valor. Este é um método não destrutivo, o que significa que não afeta os valores do array.
Sintaxe
arrayName.index(value)
Exemplo:
Vamos procurar o valor 150 no array. Atualmente, nosso array de saldo possui quatro itens 300, 200, 150 e 100. Portanto, para pesquisar 150 no array, só precisamos digitar 150 dentro do argumento do método. Isso é muito fácil. Este método retorna o índice do valor pesquisado.
import array
balance = array.array('i', [300,200,150,100])
print(balance.index(150))
SAÍDA
2
ATUALIZAÇÃO
Esta operação é bastante semelhante ao método insert, exceto que substituirá o valor existente no índice fornecido. Isso significa simplesmente atribuir um novo valor ao índice fornecido. Este método espera dois argumentos, índice e valor.
Sintaxe
arrayName.udpate(index, value)
Exemplo:
Suponha que nosso array tenha quatro itens 300, 200, 150 e 100, e queremos substituir 150 por 145. Então, qual é o índice 150?
Parabéns, se você disse 2.
Para substituir 150 que possui índice 2, você precisa referenciar o índice 2 usando um operador de atribuição simples, como este:
import array
balance = array.array('i', [300,200,150,100])
balance[2] = 145
Agora, para verificar se o valor foi atualizado, digite o nome do array e pressione Enter no teclado:
import array
balance = array.array('i', [300,200,150,100])
balance[2] = 145
print(balance)
SAÍDA
array('i', [300,200,145,100])
Atravessar
Você pode percorrer um array python usando loops, como este:
import array
balance = array.array('i', [300,200,100])
for x in balance:
print(x)
SAÍDA
300 200 100
Criando uma matriz em C++
C++ língua é mais flexível do que Python quando se trata de criar matrizes. Você pode criar C++ matrizes de três maneiras mencionadas adiante.
O código a seguir ilustra como você pode criar uma matriz de inteiros em C++ para armazenar o saldo da conta:
#include <iostream>
using namespace std;
int main()
{
int balance[3] = { 300, 200, 100 };
for (int i = 0; i < 3; i++)
{
cout << "value of i: " << balance[i] << endl;
}
return 0;
}
Maneiras de declarar um array em C++
Você pode declarar um array em três variantes de sintaxe. Qual deles se adapta ao seu programa; esta escolha é baseada nos requisitos do seu programa.
Declaração por tamanho
Sintaxe
dataType arrayName[arraySize];
Exemplo:
int balance[3];
Apenas itens da matriz de inicialização de declaração
Sintaxe
dataType arrayName[] = {array, items};
Exemplo:
int balance[] = { 300, 200, 100 };
Declaração por tamanho e itens da matriz de inicialização
Sintaxe
dataType arrayName[arraySize] = {array, items};
Exemplo:
int balance[3] = { 300, 200, 100 };
Como acessar um valor específico do array?
Você pode acessar qualquer item do array usando seu índice.
Sintaxe
arrayName[indexNum]
Exemplo:
balance[1]
A imagem a seguir ilustra o conceito básico de acesso a itens de arrays por seu índice.
Aqui, acessamos o segundo valor do array usando seu índice, que é 1. A saída disso será 200, que é basicamente o segundo valor do array de saldo.
#include <iostream>
using namespace std;
int main()
{
int balance[3] = { 300, 200, 100 };
cout << balance[1];
return 0;
}
saída
200
Ordem Operações em C++
Diferentemente dos Pythonem C++ você tem que programar a lógica para executar as operações de inserção, exclusão, atualização de pesquisa e travessia em C++ matrizes.
inserção
A lógica para operação de inserção é a seguinte:
- percorrer os itens da matriz
- transferi-los para um índice maior
- adicione um novo item da matriz em um determinado índice
No exemplo a seguir, temos 5 itens no array balance e queremos adicionar um novo item logo após o valor 200. Isso significa que temos que mudar todos os itens após 200 para um índice maior e então inserir nosso novo valor de 150.
#include <iostream>
#include <stdio.h>
main() {
int pos = 2;
int size = 4;
int balance[] = {300,200,100,50,0};
printf("BEFORE INCREMENT: \n");
for(int i = 0; i<5; i++) {
printf("%d\n",balance[i]);
}
/* FOR SHIFTING ITEMS TO A GREATER INDEX */
for(int i = size; i >= pos; i--) {
balance[i+1]=balance[i];
}
/* FOR INSERTING VALUE AT OUR DESIRED INDEX */
balance[pos] = 150;
printf("AFTER INCREMENT: \n");
/* FOR PRINTING THE NEW ARRAY */
for(int i = 0; i<6; i++) {
printf("%d\n",balance[i]);
}
}
saída
BEFORE INCREMENT 300 200 100 50 0 AFTERINCREMENT 300 200 150 100 50 0
Ordem Operações em Java
Vamos criar uma programação em Java, nisso programa de matriz em Java aceitaremos o tamanho e o valor dos elementos do array do usuário.
import java.util.Scanner;
public class AddElements {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("Enter the size of the array");
int n=sc.nextInt();
int arr[]=new int[n];
System.out.println("Enter Elements in the array");
for(int i=0;i<n;i++)
{
arr[i]=sc.nextInt();
}
System.out.println("Elements in the array");
for(int j=0;j<n;j++)
{
System.out.print(arr[j]+" ");
}
}
}
Resultado:-
Enter the size of the array 5 Enter Elements in the array 1 2 3 4 5 Elements in the array 1 2 3 4 5
Modificar elemento na matriz: -
Atualize um elemento pelo índice fornecido.
Programa em Java sobre como modificar elementos em uma matriz
import java.util.Scanner;
public class ModifyElement {
public static void main(String[] args) {
int arr[]={1,2,3,4,5};
int length= arr.length;
Scanner sc=new Scanner(System.in);
System.out.println("Array Elements Before modify");
for(int i=0;i<length;i++)
{
System.out.print(arr[i]+" ");
}
System.out.println("\nEnter the position where you want to change in an array");
int pos=sc.nextInt();
System.out.println("Enter the value");
int val=sc.nextInt();
arr[pos]=val;
System.out.println("Array Elements After modify");
for(int j=0;j<length;j++)
{
System.out.print(arr[j]+" ");
}
}
}
Resultado:-
Array Elements Before modify 1 2 3 4 5 Enter the position where you want to change in an array 2 Enter the value 8 Array Elements After modify 1 2 8 4 5
Elemento de acesso na matriz: -
Imprima todos os elementos do array.
Programa em Java para saber como percorrer em array
public class AccessElements {
public static void main(String[] args) {
int arr[]={1,2,3,4,5};
int length= arr.length;
System.out.println("Array Elements are:-");
for(int i=0;i<length;i++)
{
System.out.print(arr[i]+" ");
}
}
}
Resultado:-
Array Elements are:- 1 2 3 4 5
Resumo
- Uma matriz é uma estrutura de dados para armazenar vários itens de dados que possuem um tipo de dados semelhante
- Identificador, tipo de dados, comprimento do array, elementos e índice são as partes principais de um array
- Use o índice para processar os valores dos elementos da matriz
- Arrays têm excelente suporte para manter o tipo de dados intacto
- Na maioria das linguagens, um array é criado especificando um identificador, tipo de dados e elementos a serem incluídos.
- Matrizes são melhores para processar um grande número de valores e para classificação e pesquisa rápidas
- Python possui módulos e métodos integrados para executar operações básicas de array como inserir, excluir, pesquisar, atualizar e percorrer
- C++ precisa definir programas para operações básicas de array como inserir, excluir, pesquisar, atualizar e percorrer
