From d5a41348086fd357f8f74ec55cf38d6236bf5366 Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Sat, 8 Aug 2020 16:04:50 +0100 Subject: fix bug --- sort/quick.go | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/sort/quick.go b/sort/quick.go index 72db370..7222515 100644 --- a/sort/quick.go +++ b/sort/quick.go @@ -24,6 +24,7 @@ func quick(a ds.ArrayList) { func quickPartition(a ds.ArrayList) int { i := 0 // Left scan index j := len(a) // Right scan index + hi := j - 1 Insertion(a[0:3]) a.Swap(0, 1) @@ -31,9 +32,15 @@ func quickPartition(a ds.ArrayList) int { for { for i++; a[i] < v; i++ { + if i == hi { + break + } } for j--; v < a[j]; j-- { + if j == 0 { + break + } } // Check scan complete -- cgit v1.2.3