added quick sort implementation