0 / 0 / 0
Регистрация: 14.10.2015
Сообщений: 17
|
||||||
1 | ||||||
Транспонировать вектор векторов26.10.2016, 23:44. Показов 8711. Ответов 5
Есть кусочек кода, который генерирует вектор векторов matrix, как можно транспонировать matrix?
Планируется потом отсортировать строки (вектора) по убыванию максимальных элементов этих строк (векторов) транспонированной матрицы, а потом её ещё раз транспонировать и вывести на экран. Цель этих процедур: сделать вектор векторов (matrix) в которого столбики отсортированы по убыванию максимальных элементов этих столбиков.
0
|
26.10.2016, 23:44 | |
Ответы с готовыми решениями:
5
Добавление элементов в многомерный вектор (вектор векторов) Разбить вектор на вектор векторов по разделителю Вектор векторов Вектор векторов |
9 / 9 / 5
Регистрация: 06.01.2016
Сообщений: 55
|
||||||
26.10.2016, 23:53 | 2 | |||||
Сообщение было отмечено Amimitl как решение
Решение
Создать новый вектор векторов и, проходя по изначальному с индексацией j , i (при вложенном цикле j) выполнять push_back для новой матрицы.
Примерно так:
1
|
Вездепух
11694 / 6373 / 1723
Регистрация: 18.10.2014
Сообщений: 16,062
|
|
27.10.2016, 00:12 | 3 |
Решение неправильное. Этот вариант кода завязан на то, что матрица квадратная. А вся суть задачи как раз в том, что матрица может быть не квадратной.
0
|
0 / 0 / 0
Регистрация: 14.10.2015
Сообщений: 17
|
|
27.10.2016, 00:26 [ТС] | 4 |
Мне подходит и квадратная, но если подскажете как сделать ещё и не с квадратной будет очень супер.
0
|
Вездепух
11694 / 6373 / 1723
Регистрация: 18.10.2014
Сообщений: 16,062
|
||||||
27.10.2016, 00:30 | 5 | |||||
Если вам "подходит и квадратная", то почему в вашем исходном коде отдельно вводятся обе размерности?
Для квадратной матрицы операция транспонирования "на месте" тривиальна
1
|
9 / 9 / 5
Регистрация: 06.01.2016
Сообщений: 55
|
||||||
27.10.2016, 00:37 | 6 | |||||
Сообщение было отмечено Amimitl как решение
Решение
Верно, спасибо. Я невнимательно прочёл условие. Чтобы получить решение для прямоугольной матрицы, в которой все строки имеют одну длину, достаточно изменить два элемента. В итоге получим такой код:
1
|
27.10.2016, 00:37 | |
27.10.2016, 00:37 | |
Помогаю со студенческими работами здесь
6
Вектор векторов Вектор векторов string Вектор векторов строк Вектор векторов инициализация Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |