From ee0056ce5a80d7748ce388aa077341f350426520 Mon Sep 17 00:00:00 2001 From: Stoycho Kyosev Date: Wed, 2 Nov 2022 23:11:03 +0200 Subject: Add task3 --- Seminar05/README.md | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/Seminar05/README.md b/Seminar05/README.md index ce729b4..738d300 100644 --- a/Seminar05/README.md +++ b/Seminar05/README.md @@ -286,7 +286,7 @@ int main() { } ``` -## Задача първа: +## Задача първа: Даден е списък l с n елемента. @@ -318,4 +318,23 @@ v v | | v v 12 12 -> 2 -> 8 -``` \ No newline at end of file +``` + +## Задача трета - Linked List Partition +Да се създаде функция +```cpp +LinkedListNode* partition(LinkedListNode* head, int x); +``` +която пренарежда списъка така, че всички възли със стойност по-малка от **х** са преди всички възли със стойност по-голяма или равна от **х**. + +Пример: + +Вход: head -> 1 -> 4 -> 3 -> 2 -> 5 -> 2, x = 3 + +Output: 1 -> 2 -> 2 -> 4 -> 3 -> 5 + +Вход: head -> 2 -> 1, x = 2 + +Изход: 1 -> 2 +**HINT:** +Упътване: Можете да си направите два указателя, чрез които да строите някакви полезни помощни списъци. После, след като построите тези полезни помощни списъци, можете да пренасочите правилните указатели и да получите коректен отговор. \ No newline at end of file -- cgit v1.3.1-23-gd82d