2015-03-27 2 views
0

У меня есть структура вроде следующего:Длина связанного списка в C++

struct A 
      { 
      int v; 
      double weight; 
      A* next; 
      A(int x, double w, A* t){ 
       v=x; 
       next = t; 
       weight = w; 
      } 

     }; 

Я также сохранение этих связанных списков в векторе следующим образом:

typedef A* link; 
     vector<link>adj; 

Теперь, Я хотел бы найти длину связанного списка для adj [i]. Я знаю, что это похоже на перемещение связанного списка и увеличение количества, чтобы получить длину связанного списка. По какой-то причине я не получаю то, что хочу. Мне было интересно, может ли кто-нибудь дать мне несколько указателей. Благодаря

+1

Что вы пытаетесь? Это может быть [дубликат] (http://stackoverflow.com/questions/14238430/how-can-i-discover-the-size-length-of-a-stdvector) –

+0

Используйте 'std :: list' (или возможно, 'std :: vector') для вашего« списка ». –

+1

«По какой-то причине я не получаю то, что хочу» не является значимым описанием проблемы. Покажите свой счетный код и объясните, что вы считаете неправильным в результате. – AnT

ответ

1

что-то подобное,

int count = 0; 
link* node = adj[i]; 

while(node != 0) { 
    node = node->next; 
    count ++; 
} 
+0

Спасибо. Я ценю это. – sharky

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