Главная » 1С Предприятие » МЕТОДЫ  СОРТИРОВКИ ДАННЫХ

0

Основное  назначение  сортировки  обеспечить  быстрый поиск данных.  Помимо этого  в  отсортированном  файле  или массиве гораздо  быстрее  выполнять многие вычисления. Например, существенно  быстрее  подсчитывается число элементов, равных заданному значению.  Также  во  многих случаях  отсортированный  файл  более  удобен для просмотра и визуального анализа данных.

9.1.1.  ВНЕШНЯЯ И ВНУТРЕННЯЯ СОРТИРОВКА

Данные в  файле  можно  отсортировать, применяя  следующий  порядок действий: а) ввести данные  в  массив; б) выполнить его сортировку; в)  переместиться в  начало  файла;  г) перенести данные  из отсортированного  массива в  файл.  Такая  сортировка файла  называется  внутренней все данные файла  одновременно находятся в выделенной под процесс памяти.

Сортировка, при  которой часть данных  находится  в  принадлежащей  программе памяти, а часть во внешней памяти, называется внешней. Крайним проявлением внешней сортировки является непосредственная сортировка DBF-файла, в котором, как известно, можно  редактировать отдельные записи.

9.1.2. ПОНЯТИЕ КЛЮЧА

Пусть   файл   данных   содержит  некоторую  последовательность  из  п  элементов: r1, r2,…, rn. Каждый  элемент файла будем называть записью. Как правило, записи файла состоят  из одинакового числа компонентов, называемых полями записи.  В общем  случае компоненты записи могут быть разного типа.

Пример.  В  табл.  9.1  приводится фрагмент DBF-файла,  содержащего  данные  о сотрудниках предприятия; строка  таблиц является записью, а отдельная ячейка ее полем.

Фрагмевт файла SC4194.DBF

Таблица 9.1

Группа

СсылкаНа  Группу

Код

Наименование

Флаг Папки

Другие поля

6

2

201

Абрамова Лариса Сергеевна

2

7

2

202

Куприкова Людмила Сергеевна

2

8

2

203

Митина Ольга Владимировна

2

Группа

СсылкаНа Группу

Код

Наименование

Флаг Папки

Другие поля

9

3

111

Агальцов  Юрий  Алексеевич

2

10

3

112

Добрецов  Борис Юрьевич

2

11

4

121

Волосков  Михаил Андреевич

2

12

4

122

Кузьмина Раиса Николаевна

2

13

5

131

Васильева Елена Ивановна

2

15

5

132

Смирнова Нина Федоровна

2

16

5

133

Хохлов Евгений Николаевич

2

Свяжем с. каждой  записью файлов ri  ключ ki   , понимая под ключом  одно из полей  записи. Правда, такое понятие ключа является узким: в общем  случае ключом  записи rt является  некоторое  выражение, среди операндов которого присутствует одно  или несколько полей  записи. Так, в приведенной таблице данные  упорядочены по выражению СсылкаНаГруппу + Наименование  (знак сложения  в  выражении  уместен, поскольку поле СсылкаНаГруппу имеет символьный тип).

Выбор  ключа  диктуется практическими  целями  поиска и  представления данных.  Так, в приведенной таблице естественно  для просмотра упорядочить данные  по номеру цеха (группы), а в пределах  каждого  цеха разместить фамилии сотрудников в алфавитном порядке.

Файл  отсортирован по ключу, если для любых ki  < kj  запись ri  всегда предшествует rj, где i и j номера  записей в файле  до выполнения сортировки. (Первая запись файла  имеет номер  1.)

Вполне  возможно, что две записи  имеют в  некотором файле  одинаковый  ключ. Метод  сортировки  называется  устойчивым,  если  для  всех записей ri, и  rj,  таких,  что кi   = kj,  выполняется условие: в  отсортированном  файле  ri,  предшествует  rj  , если  ri,предшествует ri, в первоначальном файле.

Источник: Бартеньев О. В. 1С:Предприятие:  программирование для  всех.  Базовые объекты и расчеты на одной дискете. М.: Диалог-МИФИ, 2005. 464 с.

По теме:

  • Комментарии