Алгоритм для вставки определенного значения в односвязный список на основе строки и столбца - PullRequest
0 голосов
/ 19 апреля 2020

Я новичок в структурах данных . Последние 72 часа я работал, чтобы найти алгоритм для вставки определенного значения в односвязный список на основе строки и столбец индекс. Я создал односвязный список на основе SPARSE MATRIX ниже.

Image of the singly linked list based on sparse matrix

Я прикрепил изображение связанного списка выше. Например, если я хотел вставить значение в строке 0 и столбце 4 со значением 8 . Какой алгоритм наиболее подходит для этого? Заранее спасибо, ребята

1 Ответ

1 голос
/ 19 апреля 2020

Интересный момент для рассмотрения.

Сначала, если вы сгладите матрицу, то вы можете заметить, что

  • ячейка в (0,1) (в строке 0 и столбце 1) становится ячейкой с индексом 1.
  • ячейка в (1,0) становится ячейкой с индексом 5.
  • В более общем смысле, ячейка (i, j) становится ячейкой при index i * row_size + j

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

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

...