new->next = cur;
if (pre == NULL)
*head = new;
else
pre->next = new;
}
void printLink(node *head)
{
while (head->next != NULL) {
printf("%d ", head->data);
head = head->next;
}
printf("%d\n", head->data);
}
int linkLen(node *head)
{
int len = 0;
while (head != NULL) {
len ++;
head = head->next;
}
return len;
}
node* reverseK(node *head, int k)
{
int i, len, time, now;
len = linkLen(head);
if (len < k) {
return head;
} else {
time = len / k;
}
node *newhead, *prev, *next, *old, *tail;
for (now = 0, tail = NULL; now < time; now ++) {
评论