[Running] g++ test_sort_guibing_2.2..1.cpp -std=c++14-o test_sort_guibing_2.2..1.exe &&./test_sort_guibing_2.2..1.exe
817267898065778382687088--resize--12--b--
sort;lo 0 hi 11
sort;lo 0 hi 5
sort;lo 0 hi 2
sort;lo 0 hi 1return;lo 0 hi 0return;lo 1 hi 1
merge lo 0 mid 0 hi 1728167898065778382687088---return;lo 2 hi 2
merge lo 0 mid 1 hi 2677281898065778382687088---
sort;lo 3 hi 5
sort;lo 3 hi 4return;lo 3 hi 3return;lo 4 hi 4
merge lo 3 mid 3 hi 4677281808965778382687088---return;lo 5 hi 5
merge lo 3 mid 4 hi 5677281658089778382687088---
merge lo 0 mid 2 hi 5656772808189778382687088---
sort;lo 6 hi 11
sort;lo 6 hi 8
sort;lo 6 hi 7return;lo 6 hi 6return;lo 7 hi 7
merge lo 6 mid 6 hi 7656772808189778382687088---return;lo 8 hi 8
merge lo 6 mid 7 hi 8656772808189778283687088---
sort;lo 9 hi 11
sort;lo 9 hi 10return;lo 9 hi 9return;lo 10 hi 10
merge lo 9 mid 9 hi 10656772808189778283687088---return;lo 11 hi 11
merge lo 9 mid 10 hi 11656772808189778283687088---
merge lo 6 mid 8 hi 11656772808189687077828388---
merge lo 0 mid 5 hi 11656768707277808182838889---656768707277808182838889--e--[Done] exited with code=0 in 0.6 seconds
sort
對外api
arr 是 原始數組
low = 0 ;
high = arr.length - 1
sort(arr, low, high )
分治
先左後右
voidsort(arr, lo, hi){int mid = lo +(hi - lo )/2;//左邊sort(arr,lo,mid);//右邊sort(arr,mid+1, hi);merge(arr,lo,mid,hi);}