Модераторы: Partizan, gambit

Поиск:

Закрытая темаСоздание новой темы Создание опроса
> Двухмерный динамичиекий масив? 
:(
    Опции темы
Idsa
Дата 14.2.2007, 20:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2086
Регистрация: 5.12.2006
Где: Томск

Репутация: 14
Всего: 62



Цитата(-Mikle- @  14.2.2007,  20:36 Найти цитируемый пост)
 Поэтому при изменении размера массива, нужно выделить новое место в памяти, и туда скопировать данные из старого. А понятие динамический массив существует только в рамках языков высокого уровня и за собой скрывает реализацию выделенния новой памяти.

Ну это-то понятно. Просто категоричное высказывание Дуды "динамических массивов не бывает" меня смутило smile
Mikle, пасиб  smile


--------------------
Мой блог: alexidsa.blogspot.com
PM MAIL ICQ   Вверх
-Mikle-
Дата 14.2.2007, 21:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Невидимка Vingrad'а
***


Профиль
Группа: Экс. модератор
Сообщений: 1672
Регистрация: 22.6.2003
Где: Казахстан, Астана

Репутация: 17
Всего: 59



Цитата(Idsa @  14.2.2007,  23:46 Найти цитируемый пост)
категоричное высказывание Дуды "динамических массивов не бывает" меня смутило 

mr.DUDA мыслит исключительно низкоуровневым программированием  smile 


--------------------
Если тебе плюют в спину, значит ты впереди...
PM   Вверх
marcusmae
Дата 14.2.2007, 21:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


stravaganza
**


Профиль
Группа: Участник
Сообщений: 874
Регистрация: 26.3.2006

Репутация: 22
Всего: 39



Цитата

mr.DUDA мыслит исключительно низкоуровневым программированием   


и правильно делает  smile 

другое дело, что динамический - такое слово, что всегда рискуеш увязнуть в болоте тонкостей терминологии...

Это сообщение отредактировал(а) marcusmae - 14.2.2007, 21:16


--------------------
ἀπὸ μηχανῆς θεός
PM MAIL ICQ GTalk   Вверх
Idsa
Дата 14.2.2007, 21:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2086
Регистрация: 5.12.2006
Где: Томск

Репутация: 14
Всего: 62



А вообще странно, что в fw нет коллекций, которые, при необходимости расширить коллекцию не копируют все данные, а ищут подходящий участок в памяти для новых данных и записывают их туда, не забывая при этом хранить ссылки на все участки памяти. Такой подход более предпочтителен с точки зрения производительности... но жизнь сборщика мусора усложняется на порядок smile


--------------------
Мой блог: alexidsa.blogspot.com
PM MAIL ICQ   Вверх
Exception
Дата 14.2.2007, 21:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 4525
Регистрация: 26.12.2004

Репутация: 29
Всего: 186



Цитата(Idsa @  14.2.2007,  20:55 Найти цитируемый пост)
Почему бы и не организовать массив, как коллекции, выделяя память динамически. 


А почему бы не называть его списком?

Добавлено @ 21:52 
Цитата(Idsa @  14.2.2007,  22:27 Найти цитируемый пост)
А вообще странно, что в fw нет коллекций, которые, при необходимости расширить коллекцию не копируют все данные, а ищут подходящий участок в памяти для новых данных и записывают их туда, не забывая при этом хранить ссылки на все участки памяти.


А List это что?
PM   Вверх
mr.DUDA
Дата 14.2.2007, 22:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

Репутация: 110
Всего: 232



Господа, давайте определимся тогда о чём мы говорим - о динамически выделяемом массиве или массиве с динамически изменяемым размером ? А то у нас получается испорченный телефон: кто про фому, а кто - про ерёму...


--------------------
user posted image
PM MAIL WWW   Вверх
Idsa
Дата 14.2.2007, 23:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2086
Регистрация: 5.12.2006
Где: Томск

Репутация: 14
Всего: 62



Цитата(mr.DUDA @  14.2.2007,  22:47 Найти цитируемый пост)
Господа, давайте определимся тогда о чём мы говорим - о динамически выделяемом массиве или массиве с динамически изменяемым размером ? А то у нас получается испорченный телефон: кто про фому, а кто - про ерёму...

Второе smile
Цитата(Exception @  14.2.2007,  21:52 Найти цитируемый пост)
А почему бы не называть его списком?

Цитата(Exception @  14.2.2007,  21:52 Найти цитируемый пост)
А List это что?

Как заметил -Mikle-, при необходимости расширения размера коллекции происходит выделение новой памяти и копирование данных. А я же описал другой способ.




--------------------
Мой блог: alexidsa.blogspot.com
PM MAIL ICQ   Вверх
WaReZMEN
Дата 15.2.2007, 02:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 683
Регистрация: 9.6.2006
Где: Россия, Санкт-Пет ербург

Репутация: нет
Всего: 3



Я задовал вопрос о динамических массивах тоесть тех каторые могут менять свои размер в процессе работы программы а также эти масивы должны быть двумерными тоесть  иметь какбы калонку и строку (типа матрицы)... 

 
PM MAIL ICQ   Вверх
Idsa
Дата 15.2.2007, 10:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2086
Регистрация: 5.12.2006
Где: Томск

Репутация: 14
Всего: 62



Цитата(WaReZMEN @  15.2.2007,  02:21 Найти цитируемый пост)
Я задовал вопрос о динамических массивах тоесть тех каторые могут менять свои размер в процессе работы программы а также эти масивы должны быть двумерными тоесть  иметь какбы калонку и строку (типа матрицы)... 

Об этом мы уже догадались smile Ну дык вопрос закрыт или что-то непонятно?


--------------------
Мой блог: alexidsa.blogspot.com
PM MAIL ICQ   Вверх
ivashkanet
Дата 15.2.2007, 10:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодю потиху
****


Профиль
Группа: Участник Клуба
Сообщений: 3684
Регистрация: 23.2.2006
Где: Гомель, Беларусь

Репутация: 47
Всего: 149



Цитата(Idsa @  14.2.2007,  22:13 Найти цитируемый пост)
Цитата(Exception)
Цитата(Idsa @  14.2.2007,  20:27 Найти цитируемый пост)
А вообще странно, что в fw нет коллекций, которые, при необходимости расширить коллекцию не копируют все данные, а ищут подходящий участок в памяти для новых данных и записывают их туда, не забывая при этом хранить ссылки на все участки памяти. Такой подход более предпочтителен с точки зрения производительности... но жизнь сборщика мусора усложняется на порядок
А List это что?
Как заметил -Mikle-, при необходимости расширения размера коллекции происходит выделение новой памяти и копирование данных. А я же описал другой способ.

Ну тогда LinkedList. Правда его нужно напильником для полного соответствия задаче.
И это, ИМХО, единственное решение этой проблемы.

Почему? Да потому, что кто-то ведь должен знать где находится конкретный элемент. 
Если о положении элементов знает сам массив, то это... обычный массив объектов (каждый элемент массива -- ссылка на элемент в куче).



PM MAIL WWW ICQ   Вверх
mr.DUDA
Дата 15.2.2007, 10:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

Репутация: 110
Всего: 232



ivashkanet, речь о массиве и массиво-подобных контейнерах. Ты же говоришь о связном списке, который при всех своих достоинствах не позволяет брать элемент по индексу (и напильник в виде внешнего индексирующего массива или хэштейбла ему как пятая нога).

Модератор: дабы пресечь нарастающие отклонения от эвклидовой прямой темы топика, призываю не флеймить, уважаемые.


--------------------
user posted image
PM MAIL WWW   Вверх
Naum
Дата 15.2.2007, 11:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 743
Регистрация: 7.9.2005
Где: Саратов, ул. Поса дского, 298

Репутация: 8
Всего: 15



Цитата(-Mikle- @  14.2.2007,  21:36 Найти цитируемый пост)
В С# есть классы, которые тоже скрывают истинную сущность динамического выделения памяти.

Еще пример - String.



--------------------
У нас всего два праздника Новый год и ТЯПница.
PM MAIL ICQ   Вверх
ivashkanet
Дата 15.2.2007, 11:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодю потиху
****


Профиль
Группа: Участник Клуба
Сообщений: 3684
Регистрация: 23.2.2006
Где: Гомель, Беларусь

Репутация: 47
Всего: 149



mr.DUDA, это просто был ответ на пост Idsa (он в самом сердце цитаты).

Никто не говорит, что в этом листе будут храниться именно элементы. Там можно хранить массивы.
("ищут подходящий участок в памяти для новых данных и записывают их туда")
Напильник -- это просто скрытие самой сути связного списка, который наружу выставит интерфейс обычного массива.

То что я не буду пользоваться таким зверем это точно (меня более чем устраивает List<T>). Но теоретически он возможен.

Цитата(WaReZMEN @  15.2.2007,  01:21 Найти цитируемый пост)
Я задовал вопрос о динамических массивах тоесть тех каторые могут менять свои размер в процессе работы программы

ИМХО, это соответствует теме.
PM MAIL WWW ICQ   Вверх
mr.DUDA
Дата 15.2.2007, 12:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

Репутация: 110
Всего: 232



Тема закрыта.


--------------------
user posted image
PM MAIL WWW   Вверх
Закрытая темаСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.1143 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.