第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

Go中切片排序的意外基準(zhǔn)結(jié)果

Go中切片排序的意外基準(zhǔn)結(jié)果

Go
不負(fù)相思意 2021-08-01 12:53:16
我剛開始學(xué)習(xí) golang 并決定實(shí)現(xiàn)一些基本的排序算法(冒泡排序、選擇排序和插入排序)來嘗試使用包、切片和測(cè)試基礎(chǔ)設(shè)施。這是實(shí)現(xiàn):package child_sortfunc SortBubble(xs []int) {    for i := range xs {        swapped := false        for j := 1; j < len(xs)-i; j++ {            if xs[j-1] > xs[j] {                xs[j-1], xs[j] = xs[j], xs[j-1]                swapped = true            }        }        if !swapped {            break        }    }}func SortSelection(xs []int) {    for i := range xs {        min_i := i        for j := i + 1; j < len(xs); j++ {            if xs[j] < xs[min_i] {                min_i = j            }        }        if min_i != i {            xs[i], xs[min_i] = xs[min_i], xs[i]        }    }}func SortInsertion(xs []int) {    for i := 1; i < len(xs); i++ {        for j := i; j > 0; j-- {            if xs[j] < xs[j-1] {                xs[j], xs[j-1] = xs[j-1], xs[j]            }        }    }}單元測(cè)試似乎工作正常,但是當(dāng)我為這些創(chuàng)建基準(zhǔn)測(cè)試時(shí),我得到了奇怪的結(jié)果,如下所示:go test --bench . --benchmem PASSBenchmarkBubble        1    2258469081 ns/op      241664 B/op          1 allocs/opBenchmarkSelection  1000000000           0.60 ns/op        0 B/op          0 allocs/opBenchmarkInsertion         1    1180026827 ns/op      241664 B/op          1 allocs/opok      .../go/src/child_sort   12.976s困擾我的是選擇排序幾乎立即運(yùn)行并產(chǎn)生零分配。如果我減小數(shù)組的大小,其他排序算法也會(huì)發(fā)生同樣的事情。反之亦然,即如果我增加大小,選擇排序開始正常運(yùn)行。
查看完整描述

1 回答

  • 1 回答
  • 0 關(guān)注
  • 201 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)