中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

關(guān)于網(wǎng)站開發(fā)的學(xué)校武漢全網(wǎng)推廣

關(guān)于網(wǎng)站開發(fā)的學(xué)校,武漢全網(wǎng)推廣,沈陽(yáng)網(wǎng)站前端,360網(wǎng)站攔截做本代碼全網(wǎng)首發(fā)&#xff0c;使用Go plan9 windows arm64匯編&#xff0c;實(shí)現(xiàn)基礎(chǔ)版快速排序算法。 未引入隨機(jī)因子的快速排序的普通Go代碼長(zhǎng)這樣。 func QuickSort(arr []int) {if len(arr) < 1 {return}base, l, r : arr[0], 0, len(arr)-1for i : 1; i < r; {if arr…

本代碼全網(wǎng)首發(fā),使用Go plan9 windows arm64匯編,實(shí)現(xiàn)基礎(chǔ)版快速排序算法。

未引入隨機(jī)因子的快速排序的普通Go代碼長(zhǎng)這樣。

func QuickSort(arr []int) {if len(arr) <= 1 {return}base, l, r := arr[0], 0, len(arr)-1for i := 1; i <= r; {if arr[i] > base {arr[i], arr[r] = arr[r], arr[i]r--continue}arr[i], arr[l] = arr[l], arr[i]l, i = l+1, i+1}QuickSort(arr[:l])QuickSort(arr[l+1:])
}

在這里插入圖片描述

如下,使用windows arm64 Go plan9匯編實(shí)現(xiàn)的快速排序。

file: quickSort.s

#include "textflag.h"
// func QuickSortByASM(slice []int)
TEXT ·QuickSortByASM(SB), $104-24// NO_LOCAL_POINTERSMOVD R0 , tmp-8*3(SP);  MOVD R1 , tmp-8*4(SP)MOVD R2 , tmp-8*5(SP);  MOVD R3 , tmp-8*6(SP)MOVD R4 , tmp-8*7(SP);  MOVD R5 , tmp-8*8(SP)MOVD R6 , tmp-8*9(SP);  MOVD R7 , tmp-8*10(SP)MOVD R8 , tmp-8*11(SP); MOVD R9 , tmp-8*12(SP)MOVD R10, tmp-8*13(SP)MOVD slice+0(FP), R0    // arrayPtrMOVD slice+8(FP), R1    // arrayLengthMOVD $0, R2             // l_indexMOVD R1, R3             // r_index = arrayLengthSUB  $1, R3             // r_index -= 1MOVD $0, R4             // pointer1MOVD $0, R5             // pointer2MOVD $8, R6             // dataSizeMOVD $1,   R7           // indexMOVD (R0), R8           // base   TODO random indexMOVD $0,   R9CMP $1, R1; BLE LABEL_END       // if arrayLength <= 1 return
LABEL_FOR_START:CMP R3, R7; BGT LABEL_FOR_END   // if index > r_index returnMOVD R7, R4      // offset = indexMUL  R6, R4      // offset *= dataSizeADD R0,  R4      // arr[i] = R4MOVD (R4), R5    // arr[i]CMP R8, R5; BLE LABEL_SWAP // if arr[i] <= baseMOVD R3, R5      // offset = r_indexMUL  R6, R5      // offset *= dataSizeADD  R0, R5      // arr[r]MOVD (R5), R9    // tmp     = arr[r]MOVD (R4), R10   // tmp1    = arr[i]MOVD R10, (R5)   // arr[r]  = arr[i]MOVD R9, (R4)    // arr[i]  = tmpSUB  $1, R3       // r_index -= 1JMP LABEL_FOR_START
LABEL_SWAP:MOVD R7, R4MUL  R6, R4ADD  R0, R4MOVD R2, R5MUL  R6, R5ADD  R0, R5MOVD (R4), R9  // tmp = arr[i]MOVD (R5), R10 // tmp1 = arr[l]MOVD R10, (R4) // arr[i] = tmp1MOVD R9, (R5)  // arr[l] = tmpADD $1, R2     // l_index += 1ADD $1, R7     // index += 1JMP LABEL_FOR_START
LABEL_FOR_END:MOVD R0, R4MOVD R2, R5MOVD R4, tmp-104(SP)MOVD R5, tmp-96(SP)CALL ·QuickSortByASM(SB)MOVD R2, R4ADD  $1, R4MUL  R6, R4ADD  R0, R4  // right addressMOVD R1, R5  // tmp = arrayLengthSUB  R2, R5  // tmp -= l_indexSUB $1,  R5MOVD R4, tmp-104(SP)MOVD R5, tmp-96(SP)CALL ·QuickSortByASM(SB)
LABEL_END:MOVD  tmp-8*3(SP),  R0; MOVD  tmp-8*4(SP),  R1MOVD  tmp-8*5(SP),  R2; MOVD  tmp-8*6(SP),  R3MOVD  tmp-8*7(SP),  R4; MOVD  tmp-8*8(SP),  R5MOVD  tmp-8*9(SP),  R6; MOVD  tmp-8*10(SP), R7MOVD  tmp-8*11(SP),  R8;MOVD  tmp-8*12(SP), R9MOVD  tmp-8*13(SP), R10RET

該匯編版本快排基于普通版快排手寫而成, 未加入stackmap信息,大數(shù)據(jù)量樣本可能會(huì)出現(xiàn)panic,僅供參考。

對(duì)數(shù)器

package mainimport ("fmt""math/rand""sort"
)func QuickSortByASM(slice []int) // 匯編函數(shù)聲明func main() {N := 50for index := 0; index < 1000; index++ {slice := make([]int, N)for i := 0; i < N; i++ {slice[i] = rand.Int()}slice1 := make([]int, N)slice2 := make([]int, N)for i, v := range slice {slice1[i] = vslice2[i] = v}sort.Ints(slice1)QuickSortByASM(slice2)for i := 0; i < N; i++ {if slice1[i] != slice2[i] {fmt.Println(slice)fmt.Println(slice1)fmt.Println(slice2)panic(i)}}}fmt.Println("pass")
}

pass

http://www.risenshineclean.com/news/5189.html

相關(guān)文章:

  • 網(wǎng)絡(luò)平臺(tái)怎么弄湖南seo推廣
  • wordpress qtan專業(yè)搜索引擎優(yōu)化電話
  • 投票網(wǎng)站制作廣州市疫情最新
  • 哪些網(wǎng)站做外鏈好瀏陽(yáng)廖主任打人案
  • 網(wǎng)站設(shè)計(jì)導(dǎo)航欄高度中國(guó)萬(wàn)網(wǎng)域名注冊(cè)
  • 網(wǎng)站建設(shè)_超速云建站重慶seo標(biāo)準(zhǔn)
  • 微號(hào)網(wǎng)站開發(fā)長(zhǎng)沙網(wǎng)站seo哪家公司好
  • 網(wǎng)站上的搜索功能是怎么做的seo技術(shù)快速網(wǎng)站排名
  • 云南網(wǎng)站建設(shè)優(yōu)選平臺(tái)專業(yè)seo整站優(yōu)化
  • 速賣通開店流程及費(fèi)用星巴克seo網(wǎng)絡(luò)推廣
  • 視頻網(wǎng)站會(huì)員系統(tǒng)怎么做seo交互論壇
  • 網(wǎng)站防護(hù)找誰(shuí)做seo實(shí)戰(zhàn)密碼在線閱讀
  • 商城網(wǎng)站建設(shè)哪家好站長(zhǎng)平臺(tái)官網(wǎng)
  • 網(wǎng)站如何做rss訂閱長(zhǎng)沙做網(wǎng)站的公司有哪些
  • 怎么做網(wǎng)頁(yè)鏈接教程網(wǎng)站首頁(yè)關(guān)鍵詞如何優(yōu)化
  • 網(wǎng)架加工安裝一體的公司外鏈seo
  • 校園網(wǎng)站建設(shè)背景國(guó)內(nèi)做網(wǎng)站比較好的公司
  • wordpress點(diǎn)贊 1岳陽(yáng)seo快速排名
  • 石家莊商城網(wǎng)站搭建多少錢西安百度推廣運(yùn)營(yíng)
  • 百度做的網(wǎng)站seo實(shí)戰(zhàn)
  • 綜合商城網(wǎng)站程序營(yíng)銷策劃書范文案例
  • 襄陽(yáng)營(yíng)銷型網(wǎng)站寶雞seo培訓(xùn)
  • 江西網(wǎng)站制作企業(yè)qq一年多少費(fèi)用
  • 哪個(gè)網(wǎng)站可以做旅行攻略seo推廣排名公司
  • 網(wǎng)站建設(shè)思路品牌推廣專員
  • 蕪湖哪家公司做網(wǎng)站不錯(cuò)什么叫seo網(wǎng)絡(luò)推廣
  • 互聯(lián)網(wǎng)app網(wǎng)站建設(shè)方案模板百度seo關(guān)鍵詞優(yōu)化公司
  • 攜程特牌 的同時(shí)做別的網(wǎng)站蘭州做網(wǎng)站的公司
  • 上海網(wǎng)站建設(shè)備案號(hào)鄭州seo代理外包公司
  • 富錦建設(shè)局網(wǎng)站現(xiàn)在網(wǎng)絡(luò)推廣方式