Подреждането по азбучен ред е начин за сортиране (организиране) на списък. То помага на читателя бързо да намери име или заглавие в каталози, речници, указатели и бази данни. Подреждането следва стандартният (обичайният) ред на буквите в дадената азбука. Исторически някои форми на азбучно сортиране са били използвани още по време на ранната Римска империя, а методите стават по-унифицирани и разпространени след Ренесанса.
Подреждането в английския език и в повечето езици с латинска графика се извършва с помощта на римската азбука. Различните езици и култури обаче имат свои правила за сортиране: някои третират буквите с диакритични знаци като отделни букви, други ги приравняват на базовата буква или ги заместват с комбинация от букви. Освен това съществуват различни подходи за сортиране на числа, пунктуация и специални символи (например как да се подреждат букви с диакритични знаци или символи като &, # и т.н.). На немски език често срещаните специални знаци са ä, ö, ü и ß.
Основни принципи и правила
- Подреждането обикновено сравнява думите буква по буква отляво надясно: първо се сравнява първата буква, ако са равни — втората и т.н.
- Сортировката обикновено е нечувствителна към главни/малки букви (case-insensitive): "анна" и "Анна" се третират еднакво.
- Често се игнорират водещи членове и артикли при сортиране на заглавия (напр. "The", "A", "An" в английски; в български — „на“, „за“ и т.н. — зависи от правилата на източника).
- Пунктуация, интервали и тирета може да се игнорират или да им се зададе фиксиран приоритет (някои системи третираха интервала като преди буквите).
- Числата могат да се сортират лексикографски (като текст: 1, 10, 2) или числово (като стойност: 1, 2, 10) — изборът зависи от приложението.
Специфики при букви с диакритични знаци (пример: немски)
За буквите с диакритични знаци има няколко практики. Два често срещани варианта при немския са:
- Първи вариант: буквата с диакритични знаци се третира по същия начин като тази без диакритични знаци — ä се третира като a, ö като o и ü като u. (Известен като DIN 5007-1, обикновено се използва за енциклопедии.)
- Втори вариант: буквата се третира по същия начин като някаква замяна: ä се заменя с ae, ö с oe, ü с ue, а ß с ss (известен като DIN 5007-2, използван за телефонни указатели).
Обърнете внимание, че практиките се различават според езика и локала: в датския език букви като ä/å/æ се подреждат различно — някои от тях стоят след z, а не се приравняват към a, както в немския.
Подреждане в българския език (кирилска азбука)
За българския език се използва кирилската азбука. Официалният ред на съвременната българска азбука е:
А, Б, В, Г, Д, Е, Ж, З, И, Й, К, Л, М, Н, О, П, Р, С, Т, У, Ф, Х, Ц, Ч, Ш, Щ, Ъ, Ь, Ю, Я.
Някои важни бележки за български:
- Буквата Й върви след И, т.е. всичко започващо с И се подрежда преди това с Й (например: Иван, Игнат, Йордан).
- Мекият знак (Ь) и твърдият (Ъ) са отделни букви в азбуката и имат своето място при сортиране.
- При комбинации с латински символи или транслитерации може да се наложи да се дефинира правило — дали латинските имена да се третират по ASCII/латински ред или да се транслитерират и сортират по кирилски.
Примери
Пример за основно азбучно сортиране (кирилско):
- Александър
- Борис
- Васил
- Георги
Илюстрация на сравняване буква по буква: редът на имената Иван, Игнат, Йордан е:
- Иван (И-в...)
- Игнат (И-г...)
- Йордан (Й-...)
Пример за числово срещу лексикографско сортиране:
- Лексикографски (текстово): 1, 10, 2
- Числово (по стойност): 1, 2, 10
Програмни и практически съвети
- За коректно сортиране във софтуер използвайте локално-осъзнати функции за сравнение (например strcoll в C, Collator в ICU, или COLLATE в SQL), вместо просто да сравнявате байтове/ASCII.
- Бъдете внимателни при комбиниране на текст на различни езици в един списък — задайте локал (locale) или политика за транслитерация/приравняване на диакритични знаци.
- Документирайте избраните правила (напр. дали игнорирате артиклите, как третирате диакритичните букви, как се сортират числата), за да бъде сортирането предсказуемо и възпроизводимо.
- За печатни каталози и енциклопедии често се използва различен стандарт отколкото за телефонни указатели или бази данни; проверете съответните стандарти за вашия случай.
Правилното подреждане по азбучен ред улеснява намирането на информация и прави списъците по-удобни за ползване. Изборът на конкретни правила зависи от езика, предназначението на списъка и техническата среда, в която се реализира сортирането.