Size: a a a

2020 March 23

PS

Philipp Silver 🎃 in pro.algorithms
Liber Azerate
А в чём, собственно, вопрос? Вообще, не так давно делал как раз что-то такое, достал половину чата вопросами... Могу кинуть.
У меня есть две сжатые разряженные матрицы с тремя одномерными векторами value, row index, col offset(pointer), и хранятся они оба в виде CCS, вопрос в том как их умножить, чтоб получить новую третью матрицу в виде CCS. Пробовал умножить представляя матрицу А как CRS, а B - CCS(транспонирование), но результат или вообще не выходит или результат представляет собой корявую CRS матрицу
источник

PS

Philipp Silver 🎃 in pro.algorithms
Вот один пример скину, это правильно умножать CRS на CCS( строку на столбец), чтоб получить CCS или нет? У меня просто не получается
источник

PS

Philipp Silver 🎃 in pro.algorithms
Или нужно CCS на CCS, я уже несколько дней решаю и запутался
источник

PS

Philipp Silver 🎃 in pro.algorithms
Kirill Kaymakov
Умножать также как и обычные c транспонированием, за куб, просто юзая указатели на конец/начало строк
Указатели по типу вот этого for(int j = A.row_ptr[i]; j<A.row_ptr[i+1]; j++)?
источник

KK

Kirill Kaymakov in pro.algorithms
Philipp Silver 🎃
Указатели по типу вот этого for(int j = A.row_ptr[i]; j<A.row_ptr[i+1]; j++)?
Там два указателя параллельно должны идти
источник

PS

Philipp Silver 🎃 in pro.algorithms
Kirill Kaymakov
Там два указателя параллельно должны идти
то есть два указателя должны или идти по строчке, или оба по столбцу? Или под цикл первого указателя цикл второго указателя?
источник

KK

Kirill Kaymakov in pro.algorithms
Philipp Silver 🎃
то есть два указателя должны или идти по строчке, или оба по столбцу? Или под цикл первого указателя цикл второго указателя?
Смотри, транспонируешь матрицу, дальше идешьпо строкам первой матрицы и по строкам второй. На двух ненулевых строках ты берешь и двумя указателями аккуратно считаешь результат
источник

PS

Philipp Silver 🎃 in pro.algorithms
Kirill Kaymakov
Смотри, транспонируешь матрицу, дальше идешьпо строкам первой матрицы и по строкам второй. На двух ненулевых строках ты берешь и двумя указателями аккуратно считаешь результат
Ну вот у меня на картинки как раз транспонированная матрица B, результатом ее транспонирования явяляется формат CCS, а сама матрица остается не изменной, если не транспонировать матрицу коим является A то формат CRS. Тогда по сути я должен работать с двумя матрицами CRS?
источник

KK

Kirill Kaymakov in pro.algorithms
Да
источник

PS

Philipp Silver 🎃 in pro.algorithms
Но как тогда я получу результатом CCS формат третей матрицы, если работаем с двумя CRS матрицами, ведь как понимаю в итоге третье матрица будет вида CRS?
источник

KK

Kirill Kaymakov in pro.algorithms
Philipp Silver 🎃
Но как тогда я получу результатом CCS формат третей матрицы, если работаем с двумя CRS матрицами, ведь как понимаю в итоге третье матрица будет вида CRS?
Транспонированием
источник

PS

Philipp Silver 🎃 in pro.algorithms
Kirill Kaymakov
Транспонированием
Транспонирование сжатого формата CRS в CCS?
источник

KK

Kirill Kaymakov in pro.algorithms
Да
источник

PS

Philipp Silver 🎃 in pro.algorithms
Хм, может тогда и правда изначально нужно было мне реализовать транспонирование через сжатый формат, а не самой матрицы и из нее в сжатый формат, ведь это больше времени занимает
источник

п

павук максим in pro.algorithms
Ребят, кто знаком со схемой Асмута-Блума
источник

п

павук максим in pro.algorithms
Вот тут 5-ый шаг
источник

п

павук максим in pro.algorithms
источник

п

павук максим in pro.algorithms
Откуда появились a и p?
источник

hm

hime mononoke in pro.algorithms
Можете подсказать где найти алгоритм внешней однофазной сортировкой простым слиянием.
источник
2020 March 24

IZ

Ilia Zviagin in pro.algorithms
hime mononoke
Можете подсказать где найти алгоритм внешней однофазной сортировкой простым слиянием.
В Кормене был, я вот только не уверен что такое "однофазной" ...
источник