powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Есть ли такое представление массива?
14 сообщений из 14, страница 1 из 1
Есть ли такое представление массива?
    #39738870
iskatelsql
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если представить массив как

Код: c#
1.
List<List<T>>



То удобно работать со строками (ну или столбцами, смотря за что принять внутренний)

Предположим со строками... Строки удобно добавлять, удалять, сумму например по строке посчитать... Но вот со столбцами ахтунг и циклы.

Есть ли такое представление где одновременно можно и строками и столбцами рулить как в первом примере?
...
Рейтинг: 0 / 0
Есть ли такое представление массива?
    #39738891
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В общем случае ничего готового нет. Но если речь о твоей задаче с перестановками 21744302 , то можно взять двумерный массив .
...
Рейтинг: 0 / 0
Есть ли такое представление массива?
    #39738893
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iskatelsql,
Вам нужен двухмерный массив?
...
Рейтинг: 0 / 0
Есть ли такое представление массива?
    #39738898
Сон Веры Павловны
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iskatelsqlПредположим со строками... Строки удобно добавлять, удалять, сумму например по строке посчитать... Но вот со столбцами ахтунг и циклы.

Есть ли такое представление где одновременно можно и строками и столбцами рулить как в первом примере?
DataTable. При желании можно даже сделать типизированную.
...
Рейтинг: 0 / 0
Есть ли такое представление массива?
    #39738921
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iskatelsql,

Еще немного и бд захотите))
...
Рейтинг: 0 / 0
Есть ли такое представление массива?
    #39738958
iskatelsql
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima TНо если речь о твоей задаче с перестановками

Почти, только не полный перебор а вот по этому алгоритму: http://galyautdinov.ru/post/zadacha-kommivoyazhera
(Вроде как пишут что почти тоже самое, но полный перебор будет только в хужшем случае)

Так если делать по тем шагам что написано, то понадобится искать минимумы, удалять строки / столбцы... и т.д.
Со строками все легко, а со столбцами не очень.
...
Рейтинг: 0 / 0
Есть ли такое представление массива?
    #39739003
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: c#
1.
int[,] foo = new int[10,10]
...
Рейтинг: 0 / 0
Есть ли такое представление массива?
    #39739010
iskatelsql
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman Mejtes,

ну а смысл? в алгоритме удалять нужно строки / столбцы, а тут как? пересоздавать каждый раз заново массив поменьше и переносить? или еще не лучше создавать "маску" что "удалено" и пропускать? а там весьма забавная маска получится если прикинуть по итерациям. Чегото я не понимаю, из массива же слов строк не выкинешь...
...
Рейтинг: 0 / 0
Есть ли такое представление массива?
    #39739014
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iskatelsqlDima TНо если речь о твоей задаче с перестановками

Почти, только не полный перебор а вот по этому алгоритму: http://galyautdinov.ru/post/zadacha-kommivoyazhera
(Вроде как пишут что почти тоже самое, но полный перебор будет только в хужшем случае)

Так если делать по тем шагам что написано, то понадобится искать минимумы, удалять строки / столбцы... и т.д.
Со строками все легко, а со столбцами не очень.
В гугле смотрел? Задача коммивояжера код C#
...
Рейтинг: 0 / 0
Есть ли такое представление массива?
    #39739016
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iskatelsqlRoman Mejtes,

ну а смысл? в алгоритме удалять нужно строки / столбцы, а тут как? пересоздавать каждый раз заново массив поменьше и переносить? или еще не лучше создавать "маску" что "удалено" и пропускать? а там весьма забавная маска получится если прикинуть по итерациям. Чегото я не понимаю, из массива же слов строк не выкинешь...как будто List<T> работает по другому.... :D
самый большой недостаток двумерных массивов это размеры в памяти, при большом размере это неизбежно приведет к попаданию массива в LOH.
Создайте свой класс или используйте DataTable, по моему задача простейшая.
Удаляя столбец совсем не обязательно удалять содержимое данных.
Значение ячеек в строке можно получать через индексатор, как вариант.
...
Рейтинг: 0 / 0
Есть ли такое представление массива?
    #39739020
iskatelsql
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima TВ гугле смотрел? Задача коммивояжера код C#

смотрел конечно, только если по этим ссылкам походить, то там либо полным перебором в итоге решают, либо просто описание дают, и однажды даже наткнулся на код! который даже скомпилился! но как оказалость там просто визуализатор, и предложение самому реализовать класс решения, а пока там прост заглушка


В итоге плюнул и решил сам напилить прям как расписано по пунктам, благо в списках есть RemoveAt()
...
Рейтинг: 0 / 0
Есть ли такое представление массива?
    #39739038
Charles Weyland
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iskatelsqlRoman Mejtes,

ну а смысл? в алгоритме удалять нужно строки / столбцы, а тут как? пересоздавать каждый раз заново массив поменьше и переносить? или еще не лучше создавать "маску" что "удалено" и пропускать? а там весьма забавная маска получится если прикинуть по итерациям. Чегото я не понимаю, из массива же слов строк не выкинешь...
Значит, лист одномерных массивов.
...
Рейтинг: 0 / 0
Есть ли такое представление массива?
    #39739056
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iskatelsqlDima TВ гугле смотрел? Задача коммивояжера код C#

смотрел конечно, только если по этим ссылкам походить, то там либо полным перебором в итоге решают, либо просто описание дают, и однажды даже наткнулся на код! который даже скомпилился! но как оказалость там просто визуализатор, и предложение самому реализовать класс решения, а пока там прост заглушка


В итоге плюнул и решил сам напилить прям как расписано по пунктам, благо в списках есть RemoveAt()
Может свой написать? Поверх массива обертку сделать. List<T> это надстройка над массивом.

Там сложного ничего нет. Для матрицы M, N - размер массива M*N, получение элемента (x, y) => arr[x + y*M]
Останется прописать RemoveRow() и RemoveColumn()
...
Рейтинг: 0 / 0
Есть ли такое представление массива?
    #39739076
PinkCat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iskatelsql,

​Подумай над тем, какие индексы тебе нужны по твоей схеме.
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Есть ли такое представление массива?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]