pat乙 1045 快速排序 (go)
解題思路:
暴力搜尋肯定是不行的,對於go的話用scanf會超時,這裡我先讀入一行字串然後轉成整型陣列
主元就是比左邊的大,比右邊的小,而且排序後位置不變
經過一輪排序,當前位置的數字如果和排序後的數字一樣,並且比前面所有的數都大 9
1 2 3 6 5 8 7 4 9
41 2 3 9
package main
import (
"bufio"
"fmt"
"os"
"sort"
"strconv"
"strings"
)func main()
if array[i] == sortarray[i] && array[i] == max
} fmt.println(k)
for i:=0; i} fmt.println()
}
PAT 乙級 1045 快速排序
時間限制 200 ms 記憶體限制 65536 kb 長度限制 8000 b 判題程式 standard 作者 cao,peng 著名的快速排序演算法裡有乙個經典的劃分過程 我們通常採用某種方法取乙個元素作為主元,通過交換,把比主元小的元素放到它的左邊,比主元大的元素放到它的右邊。給定劃分後的n個互...
PAT 1045 快速排序
著名的快速排序演算法裡有乙個經典的劃分過程 我們通常採用某種方法取乙個元素作為主元,通過交換,把比主元小的元素放到它的左邊,比主元大的元素放到它的右邊。給定劃分後的n個互不相同的正整數的排列,請問有多少個元素可能是劃分前選取的主元?例如給定n 5,排列是1 3 2 4 5。則 1的左邊沒有元素,右邊...
PAT 1045 快速排序
1045 快速排序 25 分 著名的快速排序演算法裡有乙個經典的劃分過程 我們通常採用某種方法取乙個元素作為主元,通過交換,把比主元小的元素放到它的左邊,比主元大的元素放到它的右邊。給定劃分後的 n 個互不相同的正整數的排列,請問有多少個元素可能是劃分前選取的主元?例如給定 n 5 n 5 n 5,...