快排在工程實踐中的優化《演算法很美》

2021-10-12 04:58:36 字數 1535 閱讀 7201

思路:優化,在p,r,mid之間,選乙個中間值作為主元

public

class 快排在工程實踐中的優化

;quicksort2

(arr,

0, arr.length-1)

; util.

print

(arr);}

public

static

void

quicksort2

(int

a,int p,

int r)

}public

static

intpartition2

(int

a,int p,

int r)

else

if(a[r]

<=a[midindex]

&&a[r]

>=a[p]

)else

util.

swap

(a,p,midvalueindex)

;int pivot = a[p]

;int left = p +1;

//掃瞄指標

int right = r;

//右側指標

while

(left <= right)

} util.

swap

(a, p, right)

;return right;

}}

優化!

**思路:**將我們要排序的數,進行5個元素一組進分組並排序,將每乙個組的中間值放入medinas中,取medians[medians.length/2];這樣就求得中間值,可做元主

具體思路:

public

class

util

else

}// medians排序

_3insertionsort.

sort

(medians,

0,medians.length-1)

;return medians[medians.length/2]

;}

在優化!

//在特定情況下使用插入排序
public

static

void

main

(string[

] args)

; util.

print

(arr)

;quicksort

(arr,

0, arr.length-1)

; util.

print

(arr);}

public

static

void

quicksort

(int a,

int p,

int r)

else

}}

java 實踐中的問題

1 int等值與string之間的轉換 用string.valueof 方法將boolean char int double float long char等轉化為字串 用int i integer.parseint string s,int radix 或int i integer.parsein...

實踐中的各種問題

1.今天遇到了url的編碼問題 將字串以 url 編碼。例如空格就會變成加號,當我們傳入的引數中含有空格時,在伺服器端接收到的是空格轉成了 符的字串,導致失配,妹妹的!這麼搞也不事先說一聲,問題找的好辛苦,這時我們將用到乙個函式rawurlencode 他可以將空格等字元正確的轉義,變成 20等 這...

實踐中的重構01 05

目錄 實踐中的重構01 小方法的細調 實踐中的重構02 的視覺效果 實踐中的重構03 批處理方法預設約定 實踐中的重構04 了解每一行 裝箱的布林值 實踐中的重構05 簡潔的 b 實踐中的重構01 小方法的細調 b 重構的概念已經為廣大的程式設計師所熟悉。但是還是有很多細節可以注意。public s...