Когда впервые увидел быструю сортировку, встретил очень красивый код функции partition, которая разделяла массив на 3 части в режиме онлайн (можно было дописать в конец элемент и пересчитать указатели на части за 2 последовательных if-а, в каждом из которого был 1 swap и 1 инкремент). Сейчас попытался написать, но оно не работает. В интернете везде написан код, который идет с двух концов. Правда ли, что первого кода не существует (он изначально был неправильный)?