Как найти максимальный элемент двусвязного списка? - PullRequest
0 голосов
/ 19 октября 2019

После прочтения данных из файла в двойном списке я должен определить максимум этих данных. Эта тема является новой для меня, поэтому мне нужна помощь. Вот что у меня есть:

struct node {
  int info;
  node *next, *back;
};
node *cap = NULL;
node *first, *last, *c, *q;

Ответы [ 2 ]

1 голос
/ 19 октября 2019

Выполните итерацию по списку и сохраните максимум следующим образом:

node *max = first;
while (first) {
    if (max->info < first->info)
        max = first;
    first = first->next;
}

Предполагается, что next является нулевым указателем, когда элемент является последним.

0 голосов
/ 19 октября 2019

Для чего нужны * c и * q?

Кроме того, если вы уже можете просматривать список, просто создайте узел max и обновите его при обходе

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...