void *max_subsequence(node *head){
node *max=head;
int count=0;
int count1=0;
int i;
while(head!=NULL){
count=0;
while(head->num < head->next->num){
count++;
head=head->next;
}
if(count > count1){
count1=count;
}
head=head->next;
max=head;
}
}
Этот код не компилируется, и я не знаю почему. Он должен найти самую большую возрастающую подпоследовательность данной последовательности, хранящуюся в списке. Может ли кто-нибудь дать мне подсказку?Найти максимальную подпоследовательность данной последовательности чисел (в списке)
typedef struct node1{
int num;
struct node1 *next;
}node;
В 'while (node-> num < node-> next-> num)' вы не знаете, что 'node-> next! = NULL'. Это будет ошибка времени выполнения. –
'max_subsequence' должно вернуть значение. – BLUEPIXY
Я знаю, что он должен вернуть значение, я знаю, что бы я сделал после этого, в коде. Я думал о «запоминании», в макс. Переменной, узле, который является началом максимальной подпоследовательности. – Ross