Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- list_node2 *f5(list_node2 *head, int k) //head-начало списка
- {
- list_node2 *curr=head -> next, *last=0, *next;
- int n=0;
- if (k<=0) //Если k<=0 то некорректно задано k
- {
- delete_list2(head);
- return 0;
- }
- while (curr)
- {
- next = curr -> next;
- if (strcmp(curr -> s, curr -> pred -> s)>=0)
- {
- n++;
- if (n==k)
- last=curr;
- }
- else
- {
- if(n>=k)
- {
- last -> pred -> next = curr;
- curr -> pred -> next =0;
- curr -> pred = last -> pred;
- last -> pred =0;
- delete_list2(last);
- }
- n=0;
- }
- curr = next;
- }
- if(n>=k)
- {
- last -> pred -> next = 0;
- last -> pred = 0;
- delete_list2(last);
- }
- return head;
- }
Advertisement
Add Comment
Please, Sign In to add comment