stringtranslate.com

Colación

La recopilación es el ensamblaje de información escrita en un orden estándar. Muchos sistemas de cotejo se basan en el orden numérico o el orden alfabético , o extensiones y combinaciones de los mismos. La recopilación es un elemento fundamental de la mayoría de los sistemas de archivo de oficina , catálogos de biblioteca y libros de referencia .

La intercalación se diferencia de la clasificación en que las clases en sí no están necesariamente ordenadas. Sin embargo, incluso si el orden de las clases es irrelevante, los identificadores de las clases pueden ser miembros de un conjunto ordenado, lo que permite que un algoritmo de clasificación organice los elementos por clase.

Hablando formalmente, un método de intercalación normalmente define un orden total en un conjunto de posibles identificadores, llamados claves de clasificación, lo que en consecuencia produce un pedido anticipado total en el conjunto de elementos de información (los elementos con el mismo identificador no se colocan en ningún orden definido).

Un algoritmo de intercalación como el algoritmo de intercalación Unicode define un orden mediante el proceso de comparar dos cadenas de caracteres determinadas y decidir cuál debe ir antes que la otra. Cuando un orden se ha definido de esta manera, se puede utilizar un algoritmo de clasificación para colocar una lista de cualquier número de elementos en ese orden.

La principal ventaja de la intercalación es que hace que al usuario le resulte rápido y sencillo encontrar un elemento en la lista o confirmar que está ausente de la lista. En sistemas automáticos esto se puede hacer usando un algoritmo de búsqueda binaria o búsqueda por interpolación ; La búsqueda manual se puede realizar mediante un procedimiento más o menos similar, aunque a menudo se hará de forma inconsciente. Otras ventajas son que uno puede encontrar fácilmente el primer o el último elemento de la lista (lo que probablemente sea más útil en el caso de datos ordenados numéricamente), o elementos en un rango determinado (útil nuevamente en el caso de datos numéricos, y también con datos ordenados alfabéticamente cuando uno puede estar seguro sólo de las primeras letras del artículo o artículos buscados).

Realizar pedidos

Numérico y cronológico

Las cadenas que representan números se pueden ordenar según los valores de los números que representan. Por ejemplo, "-4", "2,5", "10", "89", "30.000". La aplicación pura de este método puede proporcionar sólo un orden parcial de las cadenas, ya que diferentes cadenas pueden representar el mismo número (como ocurre con "2" y "2.0" o, cuando se utiliza notación científica , "2e3" y "2000").

Se puede adoptar un enfoque similar con cadenas que representan fechas u otros elementos que se pueden ordenar cronológicamente o de alguna otra manera natural.

Alfabético

El orden alfabético es la base de muchos sistemas de recopilación en los que los elementos de información se identifican mediante cadenas que constan principalmente de letras de un alfabeto . El orden de las cadenas se basa en la existencia de un orden estándar para las letras del alfabeto en cuestión. (El sistema no se limita a alfabetos en el sentido técnico estricto; los idiomas que usan un silabario o abugida , por ejemplo el cherokee , pueden usar el mismo principio de ordenamiento siempre que haya un ordenamiento establecido para los símbolos utilizados).

Para decidir cuál de dos cadenas aparece primero en orden alfabético, inicialmente se comparan sus primeras letras. La cadena cuya primera letra aparece antes en el alfabeto aparece primero en orden alfabético. Si las primeras letras son iguales, se comparan las segundas letras, y así sucesivamente, hasta decidir el orden. (Si una cadena se queda sin letras para comparar, entonces se considera que viene primero; por ejemplo, "carro" viene antes de "carthorse".) El resultado de organizar un conjunto de cadenas en orden alfabético es que las palabras con la misma primera Las letras se agrupan, y dentro de dicho grupo se agrupan las palabras con las mismas dos primeras letras, y así sucesivamente.

Las letras mayúsculas normalmente se tratan como equivalentes a sus correspondientes letras minúsculas. (Para tratamientos alternativos en sistemas computarizados, consulte Cotejo automatizado, a continuación).

Es posible que se apliquen ciertas limitaciones, complicaciones y convenciones especiales cuando se utiliza el orden alfabético:

En varios idiomas, las reglas han cambiado con el tiempo, por lo que los diccionarios más antiguos pueden utilizar un orden diferente al de los modernos. Además, la clasificación puede depender del uso. Por ejemplo, los diccionarios de alemán y las guías telefónicas utilizan enfoques diferentes.

clasificación de raíces

Algunos diccionarios árabes , como el bilingüe Diccionario de árabe escrito moderno de Hans Wehr , agrupan y clasifican palabras árabes por raíz semítica . [1] Por ejemplo, las palabras kitāba ( كتابة 'escritura'), kitāb ( كتاب 'libro'), kātib ( كاتب 'escritor'), maktaba ( مكتبة 'biblioteca'), maktab ( مكتب 'oficina'), maktūb ( مكتوب 'destino' o 'escrito'), se aglomeran bajo la raíz triliteral k - t - b ( ك ت ب ), que denota 'escritura'. [2]

Clasificación de radicales y trazos

Véase también Indexación de caracteres chinos y órdenes de caracteres chinos.

Otra forma de intercalación es la clasificación por radicales y trazos , utilizada para sistemas de escritura no alfabéticos como el hanzi del chino y el kanji del japonés , cuyos miles de símbolos desafían el ordenamiento convencional. En este sistema se identifican componentes comunes de personajes; estos se llaman radicales en chino y sistemas logográficos derivados del chino. Luego, los caracteres se agrupan por su radical principal y luego se ordenan por el número de trazos de lápiz dentro de los radicales. Cuando no hay un radical obvio o hay más de un radical, la convención rige cuál se utiliza para la comparación. Por ejemplo, el carácter chino 妈 (que significa "madre") se clasifica como un carácter de seis trazos bajo el radical primario de tres trazos 女.

El sistema de radicales y trazos es engorroso en comparación con un sistema alfabético en el que hay unos pocos caracteres, todos inequívocos. La elección de qué componentes de un logograma comprenden radicales separados y qué radical es primario no está clara. Como resultado, los lenguajes logográficos a menudo complementan el orden de radicales y trazos con una clasificación alfabética de una conversión fonética de los logogramas. Por ejemplo, la palabra kanji Tōkyō (東京) se puede ordenar como si estuviera escrita en los caracteres japoneses del silabario hiragana como "to-u-ki- yo -u" (とうきょう), utilizando el orden de clasificación convencional para estos. caracteres. [ cita necesaria ]

Además, los caracteres chinos también se pueden ordenar mediante clasificación basada en trazos . En la Gran China, el orden de los trazos de los apellidos es una convención en algunos documentos oficiales donde los nombres de las personas se enumeran sin jerarquía.

Automatización

Cuando la información se almacena en sistemas digitales, la recopilación puede convertirse en un proceso automatizado. Entonces es necesario implementar un algoritmo de intercalación adecuado que permita ordenar la información de manera satisfactoria para la aplicación en cuestión. A menudo, el objetivo será lograr un orden alfabético o numérico que siga los criterios estándar descritos en las secciones anteriores. Sin embargo, no todos estos criterios son fáciles de automatizar. [3]

El tipo más simple de clasificación automatizada se basa en los códigos numéricos de los símbolos en un conjunto de caracteres , como la codificación ASCII (o cualquiera de sus superconjuntos como Unicode ), con los símbolos ordenados en orden numérico creciente de sus códigos, y esto el orden se extiende a las cadenas de acuerdo con los principios básicos del orden alfabético (matemáticamente hablando, orden lexicográfico ). Entonces, un programa de computadora podría tratar los caracteres a , b , C , d y $ como si estuvieran ordenados $ , C , a , b , d (los códigos ASCII correspondientes son $ = 36, a = 97, b = 98, C = 67, y d = 100). Por lo tanto, las cadenas que comienzan con C , M o Z se ordenarían antes que las cadenas con minúsculas a , b , etc. Esto a veces se denomina orden ASCIIbético . Esto se desvía del orden alfabético estándar, particularmente debido al orden de las letras mayúsculas antes que las minúsculas (y posiblemente al tratamiento de los espacios y otros caracteres que no son letras). Por lo tanto, a menudo se aplica con ciertas modificaciones, siendo la más obvia la conversión de mayúsculas y minúsculas (a menudo a mayúsculas, por razones históricas [nota 1] ) antes de comparar los valores ASCII.

En muchos algoritmos de clasificación, la comparación no se basa en los códigos numéricos de los caracteres, sino en referencia a la secuencia de clasificación (una secuencia en la que se supone que aparecen los caracteres a efectos de clasificación), así como a otras reglas de ordenación apropiadas para la aplicación dada. Esto puede servir para aplicar las convenciones correctas utilizadas para el orden alfabético en el idioma en cuestión, tratando adecuadamente letras en diferentes mayúsculas y minúsculas, letras modificadas , dígrafos , abreviaturas particulares, etc., como se mencionó anteriormente en Orden alfabético, y en detalle en la sección Alfabético. pedir artículo. Estos algoritmos son potencialmente bastante complejos y posiblemente requieran varias pasadas por el texto. [3]

No obstante, los problemas siguen siendo comunes cuando el algoritmo tiene que abarcar más de un idioma. Por ejemplo, en los diccionarios alemanes la palabra ökonomisch viene entre offenbar y olfaktorisch , mientras que los diccionarios turcos tratan la o y la ö como letras diferentes, colocando oyun antes de öbür .

Un algoritmo estándar para recopilar cualquier colección de cadenas compuestas por cualquier símbolo Unicode estándar es el algoritmo de clasificación Unicode . Esto se puede adaptar para utilizar la secuencia de clasificación adecuada para un idioma determinado adaptando su tabla de clasificación predeterminada. Varias de estas adaptaciones se recopilan en Common Locale Data Repository .

Claves de clasificación

En algunas aplicaciones, las cadenas mediante las cuales se clasifican los elementos pueden diferir de los identificadores que se muestran. Por ejemplo, El Resplandor podría ordenarse como El Resplandor, El (consulte el orden alfabético más arriba), pero aún así es posible que desee mostrarlo como El Resplandor . En este caso se pueden almacenar dos conjuntos de cadenas, uno para fines de visualización y otro para fines de intercalación. Las cadenas utilizadas para la clasificación de esta manera se denominan claves de clasificación .

Problemas con los números

A veces, se desea ordenar el texto con números incrustados utilizando el orden numérico adecuado. Por ejemplo, la "Figura 7b" va antes de la "Figura 11a", aunque '7' viene después de '1' en Unicode . Esto se puede extender a los números romanos . Este comportamiento no es particularmente difícil de producir siempre que solo se deban ordenar números enteros, aunque puede ralentizar significativamente la clasificación. Por ejemplo, Microsoft Windows hace esto al ordenar nombres de archivos .

Ordenar decimales correctamente es un poco más difícil, porque diferentes lugares usan diferentes símbolos para un punto decimal y, a veces, el mismo carácter usado como punto decimal también se usa como separador, por ejemplo, "Sección 3.2.5". No existe una respuesta universal sobre cómo ordenar dichas cadenas; cualquier regla depende de la aplicación.

Etiquetado de artículos pedidos

En algunos contextos, los números y letras se utilizan no tanto como base para establecer un pedido, sino como medio para etiquetar artículos que ya están ordenados. Por ejemplo, las páginas, secciones, capítulos y similares, así como los elementos de las listas, frecuentemente se "numeran" de esta manera. Las series de etiquetado que pueden usarse incluyen números arábigos ordinarios (1, 2, 3,...), números romanos (I, II, III,... o i, ii, iii,...) o letras (A , B, C, ... o a, b, c, ...). (Un método alternativo para indicar elementos de la lista, sin numerarlos, es utilizar una lista con viñetas ).

Cuando se utilizan letras de un alfabeto para este propósito de enumeración , existen ciertas convenciones específicas del idioma en cuanto a qué letras se utilizan. Por ejemplo, se omiten las letras rusas Ъ y Ь (que en la escritura sólo se utilizan para modificar la consonante precedente ), y normalmente también Ы , Й y Ё. Además, en muchos idiomas que utilizan escritura latina extendida , las letras modificadas a menudo no se utilizan en la enumeración.

Ver también

Notas

  1. ^ Históricamente, las computadoras solo manejaban texto en mayúsculas (esto se remonta a las convenciones del telégrafo ).

Referencias

  1. ^ Abu-Haidar, JA (1983). "Revisión de un diccionario de árabe escrito moderno (árabe-inglés)". Boletín de la Escuela de Estudios Orientales y Africanos de la Universidad de Londres . 46 (2): 351–353. ISSN  0041-977X. JSTOR  615409.
  2. ^ "Diccionario Hans Wehr árabe-inglés". ejtaal.net . Consultado el 4 de junio de 2023 .
  3. ^ Programación ab M: una guía completa, Richard F. Walters, Digital Press, 1997

enlaces externos