Do you see what some white space formatting and descriptive variable names can do to the readability of your code? Changing the variable names wasn't difficult either, every IDE and text editor out there supports find and replace. Nothing I did should have changed the functionality of your code.
The second while loop, starting at Line 48 in my revision, searches the array for an element that has a value lower then the pivot point. The third while loop searches for an element in the array with a value higher then the pivot point. The if statement at Line 58 in my revision switches them. You can explain the rest.