Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия, Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки
Для поиска именно минора -- не переставлять не выйдет.
Sate
Re: Найти ненулевой минор максимального размера
06.04.2011, 14:22
по гауссу минор есть кол-во ненулевых строк, со столбцами там вроде не манипулируем
ewert
06.04.2011, 14:34
Без перестановки столбцов можно обойтись. Но в вырожденном случае это невыгодно -- усложняется логика: вместо трапециевидной матрицы получается ступенчатая, и приходится произносить лишние слова.
Кроме того, в боевой обстановке (когда вычисления не целочисленные) перестановка столбцов практически необходима -- иначе нет чёткого критерия того, что строка оказывается нулевой, он теряется на фоне погрешностей округления.
Это ж я так понимаю учебная задача там точно можно)
Sate
06.04.2011, 15:07
да, задача учебная, закодить эту вещь надо. закодить смогу, а вот с алгеброй на 1 курсе не дружил(
ewert
06.04.2011, 15:36
Самый дешёвый способ закодить: переставлять строчки и столбцы физически, одновременно сохраняя в двух массивах текущие последовательности исходных номеров переставленных линий. В конце начальные участки этих массивов и будут содержать номера тех строк и столбцов, которые образуют искомый минор.
(Накладные расходы на дополнительную перестановку столбцов -- практически нулевые, а код при этом резко упрощается.)
mihailm
06.04.2011, 16:11
Я для ручного счета рекомендации давал)
Конечно, если писать програмку (о чем не было сказано) то надо и столбцы переставлять и если числа целые и считать надо по целому
Sate
06.04.2011, 16:25
а зачем столбцы переставлять? ведь для приведения к треугольному виду достаточно лишь перестановки строк и добавления к строке другой, умноженной на число