2014-09-20 4 views
-3

Я пытаюсь выполнить пузырьковую сортировку, используя связанный список и вот мой код:, реализующий сортировку пузырьков с помощью связанного_листа. Исключение нулевого указателя

 itr = head; 
     for (int j = 1; j < size; j++) 
     { 
      for (int k = 0; k < size - 1; k++) 
      { 
       if (itr.item > itr.next.item) 
       { 
        t = itr.item; 
        itr.item = itr.next.item; 
        itr.next.item = t; 
       } 
       itr = itr.next; 
       } 
     } 

линии

if (itr.item > itr.next.item) 

дает исключение нулевого указателя. Я не знаю, что не так с моим кодом. и размер - это количество узлов в связанном списке.

+0

Если у вас нет ответа, тогда не голосуйте! –

+1

Я думаю, что downvotes оправданы. Вы не показываете никаких доказательств того, что вы попытались отладить это для себя. И это вопрос низкого качества по другим причинам. –

+0

(И я уверен, что люди, которые проголосовали за это, тоже знали ответ ... но считали, что вопрос не заслуживает *.) –

ответ

1

Я вижу пару промахов. Но если бы я сказал вам, что это такое, вы потеряете пособие, чтобы узнать, как отлаживать собственный код.

Однако, я дам вам несколько подсказок:

  1. Что itr.next будет, когда при достижении конца списка?

  2. Что такое itr будет указывать после окончания внутренней петли?

+0

спасибо, что я нашел проблему :) –

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

  • Нет связанных вопросов^_^