![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#21 |
Пользователь
Регистрация: 13.07.2013
Сообщений: 18
|
![]()
Я не уверен что до конца въехал в тему, но почему бы не затолкать весь двумерный массив в одномерный, отсортировать, а потом порезать на куски и затолкать обратно в двумерный?
Или я чего то не догнал?
Я тебе чем-то помог? Нажми слева на значок весов. Спасибо =)
Мой сайт с видеоуроками по программированию - http://programmerinfo.ru/ Последний раз редактировалось -glykaman-; 13.07.2013 в 06:18. |
![]() |
![]() |
![]() |
#22 | |
Made In USSR!
Старожил
Регистрация: 01.09.2010
Сообщений: 3,657
|
![]() Цитата:
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой" |
|
![]() |
![]() |
![]() |
#23 | |
Новичок
Джуниор
Регистрация: 11.10.2011
Сообщений: 3,882
|
![]() Цитата:
Вчера я усердно пытался накатать что-то красивое с указателями, но мои попытки рушил злой Inc. Я надеялся, что инкриментируя указатель, он будет указывать на следующий элемент массива. В строке это прокатывало, НО при увеличении последнего элемента в строке получалось нечто не очень хорошее... Думал что SetLength сможет помочь, ан нет.. обломался.. Код:
Последний раз редактировалось Poma][a; 13.07.2013 в 12:08. |
|
![]() |
![]() |
![]() |
#24 |
Пользователь
Регистрация: 13.07.2013
Сообщений: 18
|
![]()
Мне кажется тогда нужно будет просто усложнить обычный метод пузырька. Когда-то решал подобное в ВУЗе было интересно.
в теле цикла for используем много условий чтобы изменить сравнения последнего элемента строки с первым элементом следующей строки. при помощи двух переменных i и j. представим что массив 4*4 Код:
Я тебе чем-то помог? Нажми слева на значок весов. Спасибо =)
Мой сайт с видеоуроками по программированию - http://programmerinfo.ru/ |
![]() |
![]() |
![]() |
#25 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,429
|
![]()
-glykaman-, ага, и правда, если не брать улучшенные алгоритмы сортировки, то реализовать гораздо проще (т.е. на каждой итерации сортировать весь двухмерный массив).
Мой вариант: Код:
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись
![]() |
![]() |
![]() |
![]() |
#26 |
Пользователь
Регистрация: 03.03.2013
Сообщений: 70
|
![]()
вот теперь другое дело)все в теме))
-glykaman-,да спс большое алгоритм понятен)то же самое про последнюю строку и т.д. как у мну думаю алгоритм внутри итерации я правильно подумал)только разница получается в том что мой более запутан с циклами итераций)а у вас один рипит с булом))спс ![]() BDA, да вот теперь мну легко смотреть и на ваш код ![]() Код:
Код:
а так как бы не было и вам спасибо ![]() Poma][a, честно говоря не верю что этот алгоритм будет мне понятен тем более с указателем та(надо читать( Последний раз редактировалось Тамерлан Абилов; 13.07.2013 в 20:40. |
![]() |
![]() |
![]() |
#27 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,429
|
![]()
У меня есть элемент с номером [i,j]. Нужно получить следующий за ним элемент.
j1 это номер столбца (номер в строке). i1 это номер строки. Чтобы не делать лишних условных операторов: j1 = j + 1 преобразую в j1 = (j + 1 - 1) mod m1 + 1 = j mod m1 + 1 Таким образом, если j = m1, то j1 = 1 (переход от последнего элемента в строке к первому). Если этот переход необходим, то нужно также увеличить и номер рассматриваемой строки: i1 = i + j div m1 (если j = m1, то j div m1 = 1, иначе 0). Если i1 стал больше, чем количество строк в массиве, то делается continue (по факту, выход из цикла).
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись
![]() |
![]() |
![]() |
![]() |
#28 |
Пользователь
Регистрация: 03.03.2013
Сообщений: 70
|
![]()
я смотрел алгоритм про i1 j1 понял
![]() Код:
|
![]() |
![]() |
![]() |
#29 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,429
|
![]()
Не уверен, что понял вопрос.
Пока идем по строке, то сравнивается a[i, j] с a[i, j + 1]. Если дошли до конца строки, то сравниваем с a[i + 1, 1]. UPD Пожалуйста
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись
![]() Последний раз редактировалось BDA; 13.07.2013 в 21:53. |
![]() |
![]() |
![]() |
#30 |
Пользователь
Регистрация: 03.03.2013
Сообщений: 70
|
![]()
да да совсем то что вы говорите просто mod меня перепутал оказывается))спс большое все понятно
![]() |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
как определить наименьший нечетный элемент в двух мерном массиве | ВДПУ | Помощь студентам | 13 | 27.05.2012 13:35 |
Добавление флага в алгоритм сортировки способом пузырька (С++) | Johnny_Grunge | Помощь студентам | 0 | 23.01.2012 21:33 |
Задача на зачёт. Поиск элементов в 1-мерном массиве | oRik24 | Помощь студентам | 7 | 16.06.2011 11:04 |
Алгоритм поиска в массиве | elpilasgsm | Помощь студентам | 10 | 18.05.2011 17:30 |