2015-02-05 3 views
0

У меня есть программа, которая запрашивает 5 входов и запрашивает диапазон. Диапазоны находятся в односвязном списке. Теперь, если 5 входов находятся в этом диапазоне, мне приходится складывать их в этот узел (диапазон). Так оно будет выглядеть так:Как использовать Stack в одиночном списке

range: 20 //max is 99. so it divides 99. for example: 0-19 20-39 40-59 and so on... 

[15]      [50] 
    |      | 
    v      v 
    [1]   [21]  [41] //5 inputs stack pushed to the ranges. 
    |   |   | 
    v   V   v 
[0-19]----->[20-39]----->[40-59] 
/range1  range2  range3 

Теперь моя проблема. Как я нажимаю 5 номеров ввода в списке? Могу ли я подключить два узла к одному узлу? Или я могу разбить диапазоны и нажимать/подключать входы к диапазонам?

ответ

0

Это похоже на проблему, которая лучше всего решена отсортированным списком вместо стека или нескольких стеков. Почему вам нужно использовать стеки?

+0

Сортировка списка? Stack для ввода входных данных в эти диапазоны. Я не получаю алгоритм, как это сделать. – imagineracoon

+0

Используйте три отдельных стека. stack1 = range 1, stack 2 = range 2 ... –

+0

Как это сделать, если у меня много диапазонов? – imagineracoon

Смежные вопросы