Cadeia de caracteres: diferenças entre revisões
Conteúdo apagado Conteúdo adicionado
Removendo o termo "samblagem": não há qualquer referência ou indício da utilização do termo senão textos publicados pelo próprio {{U|Arthur Buchsbaum}}, que foi quem inseriu o termo no artigo. |
Revisão do texto |
||
Linha 1:
{{Sem-fontes|data=fevereiro de 2011| angola=| arte=| Brasil=| ciência=| geografia=| música=| Portugal=| sociedade=|1=|2=|3=|4=|5=|6=}}
Nas maioria das linguagens de programação, as cadeias de caracteres podem ser expressas tanto na forma [[Literal (programação de computadores)|literal]], como através de algum tipo de variável. Quando expressos através de variáveis, o conteúdo da cadeia geralmente pode ser alterado pela da inclusão/exclusão de elementos ou pela da substituição de seus elementos por outros elementos, formando uma nova cadeia. Assim, uma cadeia de caracteres é vista como sendo um [[tipo de dado]] e normalmente é implementada através de um [[Arranjo (computação)|arranjo]] de [[byte|bytes]] que armazena os elementos da cadeia em sequência, utilizando alguma [[Codificação de caracteres|codificação]] preestabelecida.
== Teoria formal ==▼
Nas [[linguagens formais]], uma cadeia de caracteres é uma sequência finita de símbolos escolhidos a partir de conjunto denominado [[alfabeto]].
▲== Teoria formal ==
Seja Σ um conjunto finito e não vazio de símbolos (ou caracteres) chamado de o [[alfabeto]]. Uma cadeia sobre Σ é qualquer sequência finita de caracteres contidos em Σ.
* Se o alfabeto Σ = {0, 1}, então 0, 1, 01, 000001 e 101 são cadeias sobre o alfabeto Σ.
O comprimento ou [[cardinalidade]] da cadeia é a quantidade de caracteres utilizados para sua composição. À cadeia de comprimento [[zero]] dá-se o nome de [[cadeia vazia]] e é usualmente denotada na literatura pelos símbolos ''ε'' ou ''λ''.
* Se o alfabeto Σ = {0, 1}, então |00| = 2, |0101| = 4 e |''ε| = ''0.''''
O conjunto de todas as possíveis cadeias de tamanho ''n ''sobre um alfabeto Σ qualquer de tamanho é denotado por Σ<sup>''n''</sup>.
* Se o alfabeto Σ = {0, 1}, então Σ² = {00, 01, 10, 11}. Notar que Σ<sup>0</sup> = {ε} para qualquer alfabeto Σ.
O conjunto de todas as possíveis cadeias sobre Σ de qualquer tamanho é denotado por Σ*. Em termos de Σ<sup>''n''</sup>, Σ* = Σ<sup>''0''</sup> ∪ Σ<sup>''1''</sup> ∪ Σ<sup>''2''</sup>….
* Se o alfabeto Σ = {0, 1} então Σ* = {ε, 0, 1, 00, 01, 10, 11, 000, 001, 010, 011, …}.
Apesar do conjunto Σ* possuir infinitos elementos, todos os elementos de Σ* possuem comprimento finito.
Um conjunto de cadeias sobre um alfabeto Σ (isto é, qualquer
=== Concatenação e sub-cadeias ===
|