Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.92/13: Рейтинг темы: голосов - 13, средняя оценка - 4.92
58 / 16 / 26
Регистрация: 07.02.2015
Сообщений: 346

Сортировка строк матрицы по минимальному элементу строки

29.12.2020, 16:35. Показов 2585. Ответов 2

Студворк — интернет-сервис помощи студентам
Дана матрица и нужно её преобразовать таким образом,чтобы строки матрицы были отсортированы в зависимости от минимального элемента каждой строки. То есть входные данные такие

Python
1
2
3
4
[7,2,5,12]
[10,7,3,22]
[23,45,6,1]
[16,4,9,34]
А выходные должны быть такими

Python
1
2
3
4
[23,45,6,1] - мин.эл 1
[7,2,5,12] - мин.эл 2
[10,7,3,22] - мин.эл 3
[16,4,9,34] - мин.эл 4
Функцию Sort() использовать нельзя Было сделано следующее



Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
A1=[[1.3, 2.5, 4.5, 0.8], #Исходная матрица вещественных чисел
    [0.1, 4.2, 3.4, 2.8],
    [3.1, 1.7, 2,2, 4.5],
    [0.3, 0.6, 5,1, 0.7],
    [2.5, 3.5, 0.4, 5.3],
    [1.2, 2.4, 1.8, 7.2]]
 
print("Сформированная матрица:")
for i in range(len(A1)):                 
    for j in range(len(A1[i])):           
        print(A1[i][j], end = ' ')
    print()
 
print("Преобразованная матрица")
 
min=0;
for i in range(len(A1)):
    for j in range(len(A1[0])):
        if A1[i[j]< A1[0]{j]:
                  min= A1[i][j]
                  A1[i][j]= A1[0][j];
                  A1[0][j]= min
              
for i in range(len(A1)):                 
    for j in range(len(A1[i])):           
        print(A1[i][j], end = ' ')
    print()
В коде выше, вывел матрицы с помощью цикла нахожу минимальный элемент,заношу его в специальную переменную min но что именно дальше делать?Нашёл минимальный элемент,как сделать сортировку строк не используя sort()
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
29.12.2020, 16:35
Ответы с готовыми решениями:

Сортировка строк по минимальному элементу и замена главной диагонали на максимальные элементы строк
Вводится массив 9*9. Расставить строки в массиве по возрастанию минимальных элементов строк. Элементы главной диагонали заменить...

Каждый элемент строки матрицы представить как приращение по отношению к минимальному элементу этой же строки
Задание Каждый элемент строки прямоугольной матрицы представить как приращение по отношению к минимальному элементу этой же строки....

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

2
3582 / 2182 / 571
Регистрация: 02.09.2015
Сообщений: 5,510
29.12.2020, 16:41
Цитата Сообщение от redseven Посмотреть сообщение
не используя sort()
Python
1
2
3
4
5
6
7
8
9
n [1]: matrix = [[7, 2, 5, 12,],
   ...: [10, 7, 3, 22,],
   ...: [23, 45, 6, 1,],
   ...: [16, 4, 9, 34,],]
 
In [2]: result = sorted(matrix, key=min)
 
In [3]: print(result)
[[23, 45, 6, 1], [7, 2, 5, 12], [10, 7, 3, 22], [16, 4, 9, 34]]
1
Эксперт Python
8849 / 4501 / 1864
Регистрация: 27.03.2020
Сообщений: 7,317
29.12.2020, 18:17
Лучший ответ Сообщение было отмечено redseven как решение

Решение

redseven,
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
A1=[[1.3, 2.5, 4.5, 0.8], #Исходная матрица вещественных чисел
    [0.1, 4.2, 3.4, 2.8],
    [3.1, 1.7, 2,2, 4.5],
    [0.3, 0.6, 5,1, 0.7],
    [2.5, 3.5, 0.4, 5.3],
    [1.2, 2.4, 1.8, 7.2]]
 
print("Сформированная матрица:")
for i in range(len(A1)):                 
    for j in range(len(A1[i])):           
        print(A1[i][j], end = ' ')
    print()
 
print("Преобразованная матрица")
 
n = 1 
while n < len(A1):
     for i in range(len(A1)-n):
          if min(A1[i]) > min(A1[i+1]) :
               A1[i],A1[i+1] = A1[i+1],A1[i]
     n += 1
              
for i in range(len(A1)):                 
    print(A1[i], ' -  мин. эл ', min(A1[i]))
    #print()
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
29.12.2020, 18:17
Помогаю со студенческими работами здесь

В каждой строке матрицы найти произведение элементов предшествующих минимальному элементу строки
помогите пожалуйста решить, немого я написал, а вот дальше проблемка..))) Ввести матрицу A(N,M) . В каждой строке найти произведение...

Сортировка строк матрицы по min элементу
С Паскалем знаком плохо, но на лекции мы писали примерную задачу, дома же попробовав, реализовать записанное в тетради, я был в шоке :(...

Сортировка матрицы по первому элементу строк
Помогите пожалуйста отсортировать массив по возрастанию за элементами первого столбца Например: 5 4 3 0 3 5 1 9 7 Должно...

Сортировка по последнему элементу строк матрицы
Люди, помогите пожалуйста, сам не могу дойти. В общем сама задача не имеет значения, но с сортировкой не знаю как быть( Надо...

Быстрая сортировка строк матрицы по последнему элементу
Здравствуйте, дали задание на сортировку строк в матрице по последнему элементу. Я решил использовать быструю сортировку. Написал...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а привычная функция main(). . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru