|
1 / 1 / 0
Регистрация: 20.10.2020
Сообщений: 33
|
||||||
Разреженные матрицы01.11.2021, 10:08. Показов 5547. Ответов 34
Метки нет (Все метки)
У меня имеется разреженная матрица (файл New.xlsx). Добавляю файл для чтения в Python.
Подскажите, как организовать это все..
0
|
||||||
| 01.11.2021, 10:08 | |
|
Ответы с готовыми решениями:
34
Разреженные матрицы Разреженные матрицы Разреженные матрицы |
|
1 / 1 / 0
Регистрация: 20.10.2020
Сообщений: 33
|
|
| 11.11.2021, 14:36 [ТС] | |
|
0
|
|
|
1 / 1 / 0
Регистрация: 20.10.2020
Сообщений: 33
|
|
| 15.11.2021, 21:16 [ТС] | |
|
Gdez, не подскажете, пожалуйста, если знаете как решить, тоже самое по этой программе необходимо добавить и удалить элемент, используя res (алгоритм на фото). Вводится с клавиатуры также как при нахождении строка и столбец.
То есть при добавлении просто увеличивается res, но указатель при добавлении меняется, а при удалении пишется только указатель.
0
|
|
|
8851 / 4502 / 1864
Регистрация: 27.03.2020
Сообщений: 7,317
|
|
| 15.11.2021, 21:44 | |
|
yana111, в топике нет фото "про добавление и удаление"...
Добавлено через 1 минуту Сегодня уже "ночь". Будет время, завтра гляну. А, если честно, то это какой то мозговыверт
0
|
|
|
1 / 1 / 0
Регистрация: 20.10.2020
Сообщений: 33
|
|
| 15.11.2021, 21:55 [ТС] | |
|
Gdez, извиняюсь, не прикрепилось
Спасибо!
0
|
|
|
8851 / 4502 / 1864
Регистрация: 27.03.2020
Сообщений: 7,317
|
||||||
| 16.11.2021, 08:00 | ||||||
Сообщение было отмечено yana111 как решение
Решение
yana111, вроде так
1
|
||||||
|
1 / 1 / 0
Регистрация: 20.10.2020
Сообщений: 33
|
|
| 16.11.2021, 18:32 [ТС] | |
|
Gdez, а если добавление идет не в то место, которое указано. Надо указать строку, столбец и значение, но, как показано на предыдущем фото, добавление идет просто в конец, то есть запись ведется в конец с таким же принципом: номер столбца, значение, но указатель показывает на то место, куда добавилось. Как это реализовать?
А когда удаляешь элемент, то там свободное место образуется и записывается только указатель. И после удаления, если вновь хочешь добавить элемент, то уже добавляется в место удаления, а потом уже также в конец.
0
|
|
|
8851 / 4502 / 1864
Регистрация: 27.03.2020
Сообщений: 7,317
|
|||||||||||
| 16.11.2021, 19:43 | |||||||||||
|
yana111, хорошо, но потом работать не будет - поиск столбцов по "их рекомендациям" идет на основе "0" в конце каждого элемента. То есть все значения элементов i-го столбца между (i-1) и (i) нулями...
Вместо insert нужно тогда append:
Про удаление - просто убрать оба None
1
|
|||||||||||
|
1 / 1 / 0
Регистрация: 20.10.2020
Сообщений: 33
|
|
| 19.11.2021, 22:22 [ТС] | |
|
Gdez, спасибо огромное!
0
|
|
|
1 / 1 / 0
Регистрация: 20.10.2020
Сообщений: 33
|
|
| 19.11.2021, 22:26 [ТС] | |
|
Gdez, единственное, вопрос, при удалении, возможно я не так понимаю или не то ввожу, но вот при вводе строки и столбца, элемент не удаляется?
Все, на это отвечать не надо, сглупила
0
|
|
|
1 / 1 / 0
Регистрация: 20.10.2020
Сообщений: 33
|
||||||
| 27.11.2021, 15:21 [ТС] | ||||||
|
Gdez, а можно ли как-то сделать, чтоб программа работала бесконечно до ее остановки?
Чтоб удаление работало не только так: удалился один элемент и можно удалять последующие только элементы, стоящие до этого элемента, но и те, которые после? И добавление, чтоб работало не просто добавлением в конец, а если удалил элемент, то сначала добавленный элемент становился на место удаленного, а потом только в конец.
0
|
||||||
|
8851 / 4502 / 1864
Регистрация: 27.03.2020
Сообщений: 7,317
|
|
| 27.11.2021, 16:17 | |
|
yana111, к сожалению, не знаю.
Тут сразу несколько нестыковок: - если удалять элементы, не удаляя всю их информацию из списка, то смысл задачи (экономия памяти за счет хранения только ненулевых элементов) теряется - при частом удалении и добавлении одинакового количества элементов размер списка будет расти. - если добавление i-го элемента, например он становится последним ненулевым элементом в столбце, производится в конец списка, то как при следующем добавлении в этот столбец до i-го элемента (новый элемент становится предпоследним в столбце) я узнаю информацию об i-ом элементе - ведь он находится не попорядку, а в конце списка, в котором при определенных условиях (добавление "последних" элементов в одну строку в несколько столбцов) будет много однотипных элементов с возможно разными значениями -> (23, 34, 0), (23, 45, 0) и тп -> и ни у одного нет "маркера" номера столбца
0
|
|
|
1 / 1 / 0
Регистрация: 20.10.2020
Сообщений: 33
|
|
| 27.11.2021, 16:54 [ТС] | |
|
Gdez, хорошо, спасибо за разъяснение!
0
|
|
|
1 / 1 / 0
Регистрация: 20.10.2020
Сообщений: 33
|
|
| 30.11.2021, 18:37 [ТС] | |
|
Gdez, подскажите, пожалуйста, вот вы написали про второй пункт.
Однотипные элементы можно распознавать, ставя указатель у того элемента, который ссылается на добавленный. То есть если добавить в 1 столбец 280 строки, то первый элемент изменится на [183, 1, 1488], а последний добавится в конец [280,0,0]. То есть работая через указатели. Может будет еще какая идея, как можно осуществить бесконечное удаление и добавление в конец, а потом на место удаленного
0
|
|
|
8851 / 4502 / 1864
Регистрация: 27.03.2020
Сообщений: 7,317
|
||
| 30.11.2021, 19:35 | ||
|
yana111,
Получается поиск столбца по "0" (условие if res[k][2]==0: .), где "k" изменяется -> k += 1 --- неверно. Нужно организовать поиск по условию -> if res[res[k][2]//3][2] == 0:. Но тут тогда нужно организовать проверку - этот элемент стоит сразу после res[k] или нет (например res[k][2]//3 - 1 == k), то есть k += 1 + (res[k][2]//3 - 1 == k) Короче, если завтра будет все нормально, посмотрю...
0
|
||
|
1 / 1 / 0
Регистрация: 20.10.2020
Сообщений: 33
|
|
| 30.11.2021, 21:08 [ТС] | |
|
Gdez, спасибо, буду очень признательна, если посмотрите
0
|
|
| 30.11.2021, 21:08 | |
|
Помогаю со студенческими работами здесь
35
разреженные матрицы Разреженные матрицы Разреженные матрицы
Разреженные матрицы Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
|
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога
Финальные проекты на Си и на C++:
hello-sdl3-c. zip
hello-sdl3-cpp. zip
Результат:
|
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога
MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
|
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд.
Даже если у вас. . .
|
|
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает
монорепозиторий в котором находятся все исходники.
При создании нового решения, мы просто добавляем нужные проекты
и имеем. . .
|
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение:
В этой книге («Подход, основанный на вариантах использования») Ивар утверждает,
что архитектура программного обеспечения — это
структуры,. . .
|
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога
Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
|
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip
На первой гифке отладочные линии отключены, а на второй включены:. . .
|