Arranjo (computação): diferenças entre revisões
Aspeto
Conteúdo apagado Conteúdo adicionado
← texto trocado por '{{reciclagem}} ==Forma de acesso== <pre> @r = (5, 3, 7, 3, 5, 2, 6, 2, 8); for ($s = 0; $s <= $#r; $s++){ for ($g = 0...' |
|||
Linha 1: | Linha 1: | ||
{{reciclagem}} |
{{reciclagem}} |
||
Em [[programação de computadores]], um '''''array''''', também conhecido como ''vetor'' ou ''lista'' (para arrays uni-dimensionais) ou ''matriz'' (para arrays bi-dimensionais), é uma das mais simples [[Estrutura de dados|estruturas de dados]]. Os arrays mantêm uma série de elementos de dados, geralmente do mesmo tamanho e [[tipo de dados]]. Elementos individuais são acessados por sua posição no array. A posição é dada por um índice, também chamado de subscrição. O índice geralmente utiliza uma seqüência de [[número inteiro|números inteiro]]s, (ao contrário de um [[array associativo]]) mas o índex pode ter qualquer valor [[número ordinal|ordinal]]. Alguns arrays são ''multi-dimensionais'', significando que eles são indexados por um número fixo de números inteiros, por exemplo, por um seqüência (ou sucessão) finita de quatro números inteiros. Geralmente, arrays uni- e bi-dimensionais são os mais comuns. |
|||
Os arrays podem-se considerar como as estruturas de dado mais simples que é possível imaginar. Têm a vantagem de que os seus elementos são acessíveis de forma rápida, mas têm uma notável limitação: são de tamanho fixo, mas podem ser incrementados ou diminuídos com determinados algoritmos, geralmente envolvendo a cópia de elementos de um array para outro e reinicializar o original com a nova dimensão. Os vetores podem ser implementados desta forma. |
|||
Estas estruturas de dado são ajeitadas nas situações em que o acesso aos dados seja realizado de forma aleatória e impredizível. Porém, se os elementos podem estar ordenados e vai-se empregar um acesso seqüencial, seria mais ajeitada uma [[lista]]. |
|||
==Forma de acesso== |
==Forma de acesso== |
||
<pre> |
|||
A forma de aceder aos elementos de um array é '''direta''', ao contrário das [[lista]]s. Isto quer dizer que o elemento desejado obtêm-se a partir do seu índice e não é preciso procurá-lo elemento por elemento. No caso das listas, por exemplo, para alcançar o terceiro elemento ter-se-á de aceder primeiro aos dois anteriores (ou bem de guardar um [[ponteiro]] que permita aceder de maneira rápida a esse elemento em particular). |
|||
@r = (5, 3, 7, 3, 5, 2, 6, 2, 8); |
|||
==Exemplos== |
|||
for ($s = 0; $s <= $#r; $s++){ |
|||
;Declarando e alocando um array |
|||
Em [[Java (linguagem de programação)|Java]], os arrays são objetos que necessitam ser inicializados. Isto geralmente é feito usando o operador <tt>new</tt>. Para um array, o programador especifica o tipo dos elementos do array e o número de elementos como parte da operação <tt>new</tt>. Ex.: <code>int[] A = new int[5]</code>. |
|||
for ($g = 0; $g < $r[$s]; $g ++){ |
|||
<source lang="java"> |
|||
String[] S = new String[5]; |
|||
double[] d = new double[10]; |
|||
int[][] d2 = new int[10][10]; // matriz 10x10 , array de arrays |
|||
double[] a; |
|||
a = new double[100]; |
|||
</source> |
|||
Em [[Linguagem de programação C|C]], os arrays são declarados, definindo primeiro o seu tipo, em seguida do seu nome e por fim a sua dimensão. Ex.: <code>int array[10];</code>. |
|||
<source lang="c"> |
|||
int quadro[10]; |
|||
double array[100]; |
|||
int matrix[20][10]; /* matriz 20x10 */ |
|||
</source> |
|||
;Inicializando arrays no momento da criação |
|||
<source lang="java"> |
|||
int[] A = {5, 7, 9, 2, 0}; |
|||
int[][] d2 = { {1,2,3} , {4,5,6} }; |
|||
long[] a = new long[] {10,20,30,40}; |
|||
</source> |
|||
Automaticamente o Java inicializa com um valor [[default]] cada elemento do array: |
|||
*Null para tipo Objetos; |
|||
*0 (zero) para [[short]], [[byte]], [[int]], [[long]], [[float]] e [[double]]; |
|||
*Unicode 0 para [[char]]; |
|||
*False para [[boolean]]; |
|||
Em [[Linguagem de programação C|C]], os arrays quando inicializados no momento da declaração, são definidos do seguinte modo: |
|||
<source lang="c"> |
|||
int array[5] = {3,4,5,6,3}; |
|||
double quadro[5] = {3.0,4.0,5.0,6.03,3.0}; |
|||
int matrix[4][4] = {{3,4,3,4},{5,6,2,3},{9,2,7,4},{1,7,0,3}}; |
|||
</source> |
|||
Obs:. Em C# a criação de um array é igual em java. |
|||
=={{Ligações externas}}== |
|||
*[http://www.plugmasters.com.br/sys/materias/535/1/Arrays-em-Java Arrays em Java] |
|||
{{esboço-programação}} |
|||
print "*"; |
|||
} |
|||
[[Categoria:Estruturas de dados]] |
|||
print "\n"; |
|||
} |
|||
[[bg:Масив]] |
|||
</pre> |
|||
[[bn:অ্যারে]] |
|||
[[ca:Vector (programació)]] |
|||
[[cs:Pole (datová struktura)]] |
|||
[[de:Feld (Datentyp)]] |
|||
[[en:Array data structure]] |
|||
[[eo:Aro (komputiko)]] |
|||
[[es:Vector (informática)]] |
|||
[[fa:آرایه (رایانه)]] |
|||
[[fi:Taulukko (tietorakenne)]] |
|||
[[fr:Tableau (structure de données)]] |
|||
[[he:מערך (מבנה נתונים)]] |
|||
[[hu:Tömb]] |
|||
[[id:Larik]] |
|||
[[is:Fylki (tölvunarfræði)]] |
|||
[[it:Array]] |
|||
[[ja:配列]] |
|||
[[ko:배열]] |
|||
[[nl:Array]] |
|||
[[no:Tabell (datastruktur)]] |
|||
[[pl:Tablica]] |
|||
[[ru:Индексный массив]] |
|||
[[simple:Array]] |
|||
[[sk:Pole (údajová štruktúra)]] |
|||
[[sl:Tabela (računalništvo)]] |
|||
[[sr:Низ (структура података)]] |
|||
[[sv:Array]] |
|||
[[ta:அணி (கணினியியல்)]] |
|||
[[tr:Dizi (bilgisayar bilimleri)]] |
|||
[[uk:Масив (структура даних)]] |
|||
[[zh:数组]] |
Revisão das 23h11min de 10 de julho de 2009
Este artigo carece de reciclagem de acordo com o livro de estilo. |
Forma de acesso
@r = (5, 3, 7, 3, 5, 2, 6, 2, 8); for ($s = 0; $s <= $#r; $s++){ for ($g = 0; $g < $r[$s]; $g ++){ print "*"; } print "\n"; }