Skip to content
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Commit f6bc324

Browse files
committedJun 13, 2021
sort: update
Change-Id: I723e9ebd1cb812f7f420ea4bf4d496ed3a5cf30f
1 parent 006caaf commit f6bc324

File tree

2 files changed

+6
-6
lines changed

2 files changed

+6
-6
lines changed
 

‎go/basic/sort/sort.go

+4-4
Original file line numberDiff line numberDiff line change
@@ -55,13 +55,13 @@ func QuickSortInPlace(target []int) []int {
5555
j := right
5656
// 以双指针相遇地将数组分割成两部分,将两侧分布不对的元素互换
5757
for i < j {
58-
// 直接找到比基准小的元素
58+
// 直接找到比基准小的元素, 基准放右侧
5959
for i < j && arr[j] >= datum {
6060
j--
6161
}
6262
arr[i] = arr[j]
63-
// 直接找到比基准大的元素
64-
for i < j && arr[i] <= datum {
63+
// 直接找到比基准大的元素,<表示不要基准
64+
for i < j && arr[i] < datum {
6565
i++
6666
}
6767
arr[j] = arr[i]
@@ -87,7 +87,7 @@ func QuickSort(arr []int) {
8787
for array[i] < k {
8888
i++
8989
}
90-
for array[j] > k {
90+
for array[j] >= k {
9191
j--
9292
}
9393
if i > j {

‎go/basic/sort/sort_test.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -27,10 +27,10 @@ func isArraySort(target []int) bool {
2727
}
2828

2929
func TestQuickSort(t *testing.T) {
30-
for i := 0; i < 20; i++ {
30+
for i := 0; i < 50; i++ {
3131
arr := makeRandomArray(10)
3232
fmt.Printf("origin arr=%v\n", arr)
33-
QuickSort(arr)
33+
QuickSortInPlace(arr)
3434
isSort := isArraySort(arr)
3535
if !isSort {
3636
t.Errorf("sort fail, arr=%v\n", arr)

0 commit comments

Comments
 (0)
Please sign in to comment.