采用多路歸並技術可以減少歸並次數,從而降低塊讀/寫次數,加速排序速度。但一般路數的多少取決於內存的容量。此外,多路歸並排序的快慢還取決於內部歸並算法的快慢。
設文件有n個記錄,m個初始歸並段,采用k路歸並方法。k路歸並的基本操作是,從k個歸並段的第一個記錄中選出最小記錄,把他從輸入緩沖區移入輸出緩沖區。常見的方法是基於敗者樹的多路替代選擇歸並排序方法。
在敗者樹中,每個葉節點存放各個歸並段在歸並過程中當前參加比較的記錄,每個非葉節點表示的是其左、右子女節點中的敗者,即在雙親節點記錄下比賽中的敗者,讓勝者去參加更高一層的比賽。因此,敗者樹的根節點記錄的是敗者,還需要加一個節點來記錄整個過程的勝者,以下圖(源自百度)所示的敗者樹為例,實現5路歸並排序。

在上圖的敗者樹中,b3和b4比賽,b3勝b4負,節點ls[4]的值為4,即敗者b4的下標;b1和b2比賽,b1勝b2負,節點ls[1]的值為1。因為在敗者樹中根節點ls[1]里存儲的是敗者,所以用節點ls[0]來記錄比賽中的勝者,即b3。
在選出最小關鍵碼之后,只要修改b3的值即可,將b3的值改為同一歸並段中的下一個記錄的關鍵碼,然后對該節點向上的雙親節點所指的關鍵碼進行比較,敗者留在雙親節點,勝者繼續向上,直至成為根節點的雙親。