你就遍历链表,检查相邻节点的值是否递增,递增则先记录起始节点及数量。直到遇到非递增节点。与之前最大连续数量比较,如果当前更多,则记录当前的起始节点和数量。继续开始后续节点比较就行了
主要逻辑如下:
LinkList p = head; //假设链表是LinkList,head是表头
LinkList p2 = p->next;
int k = 0;
int maxlen = 0;
while(p)
{
if(p2==0)
{
if(k > maxlen) maxlen = k;
break;
}
if(p2->data > p->data)
k++;
else
{
if(k > maxlen) maxlen = k;
k = 1;
}
p = p2;
p2 = p->next;
}