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