Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Архив3 / OOP_kursach / ООП_курсач.doc
Скачиваний:
96
Добавлен:
07.08.2013
Размер:
393.73 Кб
Скачать

2.1.2 Определители.

Перестановка- это упорядоченный (не обязательно по возрастанию, а произвольно) набор (или, говоря для простоты понимания, запись) всех n натуральных чисел из отрезка натурального ряда(- это множество натуральных чисел 1, 2, ..., n) без повторений.

Утверждение 1.Число всех перестановок nэлементов равно .

Доказательство.Действительно, общий вид перестановки из n символов есть i1, i2, ..., in, где каждое isесть одно из чисел 1, 2, ..., n, причем ни одно из этих чисел не встречается дважды. В качестве i1можно взять любое из чисел 1, 2, ..., n; это дает n различных возможностей. Если, однако, i1уже выбрано, то в качестве i2можно взять лишь одно из оставшихся n-1 чисел, т.е. число различных способов выбрать символы i1и i2равно произведению n(n-1) и т.д.

Таким образом, число перестановок из n символов при n=2 равно 2!=2 (перестановки 12 и 21; в примерах, где n  9, мы не будем разделять переставляемые символы запятыми); при n=3 это число равно 3!=6. С ростом n число перестановок чрезвычайно быстро возрастает; так, при n=10 оно равно 3628800.

Теперь разобьем все n! перестановок n элементов на два класса по признаку, кажущемуся довольно искусственным, но именно это разбиение будет нужно для разумного правила расстановки знаков в определителе.

Пусть ( 1, 2, ..., n) - некоторая перестановка чисел 1, 2, ..., n. Говорят, что пара элементов (i, j), i < j, образуетинверсию, если i> j. Число всех пар элементов перестановки, образующих инверсию, называетсячислом инверсий в перестановкеи обозначается inv(1, 2, ..., n). Так, inv(35142687)=7 (инверсии образуют пары 31, 32, 51, 54, 52, 42, 87).

Перестановки, содержащие четное число инверсий, называются четными, содержащие нечетное число инверсий -нечетными.

Если в некоторой перестановке мы поменяем местами какие-либо два символа (не обязательно стоящие рядом), а все остальные символы оставим на месте, то получим, очевидно, новую перестановку. Это преобразование перестановки называется транспозицией.

Утверждение 2.От любой перестановки из nсимволов можно перейти к любой другой перестановки посредством нескольких транспозиций.

Доказательство. Применим индукцию. Это утверждение справедливо при n = 2; если требуется начинать с перестановки 12, то вторая (а их всего две) 21 получается из первой в результате одной транспозиции. Предположим, что наше утверждение уже доказано для n-1, и докажем его для n. Пусть (1, 2, ..., n) и (1, 2, ..., n) - две данные перестановки.  Если 1= 1, то (2, ..., n) и (2, ..., n) отличаются только порядком и, в силу предположения об индукции, посредством нескольких транспозиций можно перейти от (2, ..., n) к (2, ..., n) и, следовательно, от (1, 2, ..., n) к (1, 2, ..., n). Пусть теперь 1 1. Тогда 1= iпри некотором i  1. Сделав в (1, 2, ..., n) транспозицию (1, i), мы придем к новой перестановке, у которой на первом месте находится i = 1. В силу доказанного выше свойства, эта перестановка превращается в (1, 2, ..., n) посредством нескольких транспозиций. Следовательно, от (1, 2, ..., n) к (1, 2, ..., n) можно перейти посредством нескольких транспозиций, что и требовалось доказать.

Заметим, что переход от одной перестановки к другой посредством транспозиций неоднозначен.

Утверждение 3.Всякая транспозиция меняет четность перестановки.

Доказательство. Рассмотрим сначала случай, когда транспонируемые символы i и j стоят рядом, т.е. перестановка имеет вид ..., i, j, ..., где многоточия заменяют те символы, которые не затрагиваются транспозицией. Транспозиция превращает нашу перестановку в перестановку ..., j, i, ..., причем, понятно, в обеих перестановках каждый из символов i, j составляет одни и те же инверсии с символами, остающимися на месте. Если символы i и j раньше не составляли инверсии, то в новой перестановке появляется одна новая инверсия, т.е. число инверсий увеличивается на единицу; если же они раньше составляли инверсию, то теперь она пропадает, т.е. число инверсий на единицу уменьшается. В обоих случаях четность перестановки меняется.

Пусть теперь между транспонируемыми символами i и j расположены s символов, s > 0, т.е. перестановка имеет вид ..., i, k1, k2, ..., ks, j, ... (1)

Транспозицию символов i и j можно получить в результате последовательного выполнения 2s+1 транспозиций соседних элементов. А именно это будут транспозиции, переставляющие символы i и k1, затем i (уже стоящие на месте символа k1) и k2и т.д., пока i не займет место символа ks. За этими s транспозициями следует транспозиция, перемещающая символы i и j, а затем s транспозиций символа j со всеми k, после чего j занимает место символа i, а символы k возвращаются на свои старые места. Таким образом, мы нечетное число раз меняли четность перестановки, а поэтому перестановки (1) и ..., j, k1, k2, ..., ks, i, ... имеют противоположные четности.

Утверждение 4.Число четных перестановок n элементов равно числу нечетных перестановок.

Доказательство. Пусть число четных перестановок равно a, число нечетных равно b. Рассмотрим множество всех четных перестановок. Сделаем в них одну и ту же транспозицию, например, (1,2). Мы получим нечетные перестановки, попарно различные, в количестве a штук. Так как число всех нечетных перестановок равно b, то заключаем, что a  b. Теперь рассмотрим множество всех нечетных перестановок и сделаем в них транспозицию (1,2). Мы получим b четных перестановок и, следовательно, b  a. Из установленных неравенств следует, что a = b, что и требовалось доказать.

Попутно мы получили, что если во всехчетных перестановках сделать одну и ту же транспозицию, что мы получимвсенечетные перестановки.

Определим теперь еще одно понятие, а именно понятие подстановки.  Подстановкойn-й степени на множестве {1, 2, ..., n} называется взаимно однозначное отображение множества на себя. Удобно задавать подстановку прямым указанием замен для каждого элемента, посредством записи образа под прообразом. Так, записьзадает подстановку, которая заменяет элементы 1, 2, 3, 4, 5, соответственно, на 5, 1, 3, 2, 4; порядок расположения ее столбцов безразличен. В такой записи в "числителе" и в "знаменателе" оказываются перестановки. Удобно в "числителе" записывать элементы в натуральном расположении. От одной записи подстановки к другой можно перейти при помощи нескольких транспозиций столбиков. В частности, всякая подстановка на множестве {1, 2, ..., n} может быть записана в виде

(2)

При такой записи различные подстановки отличаются друг от друга перестановками, стоящими в нижней строке, и поэтому число подстановок n-й степени равно числу перестановок из n символов, т.е. равно n!

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

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

Утвержденние 5.Либо при всех записях подстановки четности верхней и нижней строк совпадают, либо же при всех записях они противоположны.

В первом случае подстановка будет называться четной, во втором -нечетной.

Если подстановка записана в виде (2), т.е. в верхней строке стоит четная перестановка 1, 2, ..., n, то четность подстановки будет определяться четностью перестановки  1, 2, ..., n, стоящей в нижней строке. Отсюда следует

Утверждение 6.Число четных подстановокn-йстепени равно числу нечетных, т.е. равно.

2.2.Технология обработки информации

Любая матрица представляется в виде двухмерного массива целых десятичных чисел типа int. Кроме того, каждой таблице соответствует еще 2 положительных целых числа типа unsigned char хранящие размеры матрицы.