Lomuto partition rearranges around pivot: Choose last as pivot.
Index tracks boundary of pivot.
Scan with . If , swap with , increment .
Swap pivot to .
function partition(arr, low, high):
pivot = arr[high]
i = low - 1
for j from low to high-1:
if arr[j] < pivot:
i++; swap(arr[i], arr[j])
swap(arr[i+1], arr[high])
return i + 1
Pivot ends at final sorted position.