|
5 / 5 / 0
Регистрация: 28.11.2009
Сообщений: 25
|
|
Поменять местами две строки матрицы13.11.2010, 12:18. Показов 74293. Ответов 40
Метки нет (Все метки)
1
|
|
| 13.11.2010, 12:18 | |
|
Ответы с готовыми решениями:
40
Поменять местами две любые строки матрицы
|
|
236 / 173 / 25
Регистрация: 13.11.2010
Сообщений: 425
|
|
| 13.11.2010, 22:19 | |
|
M128K145, вы не в ту степь пошли. По вашему когда в std есть функция swap ею не надо пользоваться, а нужно заменять все кусками "однородного" кода?
0
|
|
|
8384 / 3618 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
|
||
| 13.11.2010, 22:58 | ||
|
almazsr, логично, что swap надо использовать не всегда, он удобен, например, для быстрого обмена объектов, а не для таких легких действий. В общем не буду никого ни в чем убеждать, но потом, когда на серьезном проекте с таким столкнетесь, где кода будет не 2 строки, а 102, тогда поймете к чему я это говорил, и как вы потом будете вносить изменения и решать проблемы, вызванные подобными изменениями.
volovzi, вам все равно как будет выглядеть функция внутри? Простите, а вы кто по профессии? Вы разве не программист? Тогда как вы можете говорить, что вам все равно как она выглядит внутри? А кто будет саппортить код потом? Кто будет вносить изменения в код?
1
|
||
|
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|
| 13.11.2010, 22:59 | |
|
Полностью солидарен с M128K145.
0
|
|
|
274 / 175 / 12
Регистрация: 14.03.2010
Сообщений: 501
|
|||
| 13.11.2010, 23:13 | |||
|
Не надо выдёргивать слова из контекста. Неважно, как выглядит функция с точки зрения единообразности кода. Естественно, желательно, чтобы она легко читалась и понималась. Но и в данном случае читать, понимать и поддерживать своп двух указателей проще, чем цикл с несколькими действиями.
0
|
|||
|
8384 / 3618 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
|
||
| 13.11.2010, 23:28 | ||
|
ЗЫ. никаких эмоций, только хорошие намерения
0
|
||
|
274 / 175 / 12
Регистрация: 14.03.2010
Сообщений: 501
|
|
| 13.11.2010, 23:46 | |
|
M128K145, от языка Си++ отходить не надо
. Здесь обсуждается решение конкретной задачи на конкретном языке.Между прочим, редактирование нескольких однотипных функций как раз более опасно, чем нескольких разнотипных (что-то сродни антипаттерну copy-paste). Можно легко перепутать, что ты сейчас редактируешь, поставить не тот итератор и т.п. Вот здесь как стоило бы посидеть над каждой функцией. А своп я даже проверять не буду .
0
|
|
|
8384 / 3618 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
|
|
| 13.11.2010, 23:56 | |
|
volovzi, когда мы начали обсуждать использования способа обмена и методы организации решения - то мы начали обсуждать принципы программирования, а не конкретную задачу на конкретном языке. Я же не зря в начале своего поста поставил цитату, на нее стоит обратить внимание. В этом разделе как бы не только бесплатно решают задачки, тут еще и учатся программированию, поэтому обсуждать отталкиваясь только от свопа и матрицы - не серьезно. Все же ответьте на весь предыдущий пост, не теряя цитаты
0
|
|
|
274 / 175 / 12
Регистрация: 14.03.2010
Сообщений: 501
|
|
| 14.11.2010, 00:19 | |
|
M128K145, ты в какие-то дебри ушёл. Я утверждаю, что простая в понимании функция, работающая за константное время, лучше, чем более сложная, работающая за линейное.
А размер функции от размера проекта вообще не зависит.
0
|
|
|
8384 / 3618 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
|
|
| 14.11.2010, 00:23 | |
|
volovzi, речь идет о целесообразности применения разных решений для практически одинаковых действий
0
|
|
|
274 / 175 / 12
Регистрация: 14.03.2010
Сообщений: 501
|
|
| 14.11.2010, 00:34 | |
|
В данном случае это целесообразно, и я уже объяснил почему.
0
|
|
|
8384 / 3618 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
|
|
| 14.11.2010, 09:03 | |
|
volovzi, не буду переубеждать, но столкнетесь - вспомните
0
|
|
|
274 / 175 / 12
Регистрация: 14.03.2010
Сообщений: 501
|
|
| 14.11.2010, 11:28 | |
|
M128K145, если ты так упрямо не хочешь признаваться, что написал плохой пример, то, может, спросим "зал"? Тут можно опросы делать?
0
|
|
|
4728 / 2549 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
|
||
| 14.11.2010, 11:51 | ||
0
|
||
|
274 / 175 / 12
Регистрация: 14.03.2010
Сообщений: 501
|
||
| 14.11.2010, 11:58 | ||
|
Ничего современного в обмене указателей нет. Этот способ — ровесник языка Си.
0
|
||
|
4728 / 2549 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
|
||
| 14.11.2010, 12:22 | ||
Например вот задача: Дан массив размером N. Одним обменом называется обмен соседних элементов в массиве. Найдите минимальное кол-во обменов которое нужно совершить чтобы матрица стала упорядоченной по возрастанию. По-моему для этой задачи как раз подойдет сортировка пузырьком.
0
|
||
|
274 / 175 / 12
Регистрация: 14.03.2010
Сообщений: 501
|
|
| 14.11.2010, 12:32 | |
|
valeriikozlov, ага, принцип я понял.
Задача: Дана матрица N x M. Обменом строк матрицы называется последовательный обмен соответствующих элементов строки. Обменять строки под номерами i и j. Я реально не понимаю, что вы так сопротивляетесь? Своп указателей в данном случае лучше не только по скорости, но и с соображений семантики. Цель — обменять строки. Пишем — swap(row1, row2), что с языка Си на русский переводится как обмен двух строк. Проще и понятнее не бывает. Да, к сожалению, со столбцами так не получается, поэтому приходится городить циклы. А вы тут целую теорию подвели под своё плохое решение.
0
|
|
|
8384 / 3618 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
|
||
| 14.11.2010, 12:42 | ||
|
volovzi, вы имели опыт реальной разработки, или это то, что вам рассказывают в ВУЗе на лекциях? А то что вы назвали "теорией" - это реальность, с которой вы столкнетесь
0
|
||
|
4728 / 2549 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
|
|||
| 14.11.2010, 12:46 | |||
Но остаюсь при своем мнении что вариант M128K145 тоже нужный (в других близких задачах лучше будет этот вариант).
0
|
|||
|
274 / 175 / 12
Регистрация: 14.03.2010
Сообщений: 501
|
||
| 14.11.2010, 12:54 | ||
|
M128K145, предложение спросить народ в силе.
0
|
||
|
6 / 6 / 1
Регистрация: 23.12.2012
Сообщений: 131
|
|
| 09.11.2013, 17:52 | |
|
Познавательно
![]() Добавлено через 1 минуту Правда поэлементный обмен в динамическом массиве не прокатывает, странно.
0
|
|
| 09.11.2013, 17:52 | |
|
Разработать функцию, позволяющую поменять местами две произвольные строки матрицы Как поменять местами две строки матрицы без использования подпрограмм?
Двумерный массив: поменять местами две строки В матрице поменять местами две строки с заданными номерами Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка:
Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
|
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо
Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
|
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман.
Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
|
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
|
|
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
|
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ
Основная суть и тезисы по измерениям:
0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема.
Объект не может перемещаться в 0D.
1D (Первое измерение):. . .
|
[EasyBuilder Pro] Памятка по разработке для панелей Weintek
ФедосеевПавел 26.08.2026
Памятка по разработке для панелей Weintek
ВВЕДЕНИЕ
Ранее, при реализации проектов основное внимание уделял разработке управляющей программы для контроллера, а панели оператора доставалось время. . .
|
Модель по догадкам
anaschu 25.08.2026
Прошло две недели. Я уже рассказывал, как разговаривал с сотрудниками у сортировки и как понял, что главная ветка — не про приёмку, а про отбор. Но тогда я думал, что понял механику. На этой неделе я. . .
|