Try   HackMD

2024q1 Homework2 (quiz1+2)

contributed by < wilicw >

Optimized QuickSort

文章閱讀

測驗中提及的文章使用迴圈和 begin end 的方式來取代 Quick Sort 的遞迴,

使用 List API 實作

實作程式碼

測驗一中使用了單向鏈結串列,而原文中使用的是陣列,這兩種方法在實作時需要分別宣告數列的開頭(begin 變數)和結尾(end 變數)才能得知每次迴圈需要走訪的範圍,如果使用 Linux 風格的雙向鏈結串列,只需要一個 stack 變數即可儲存每次迴圈所需要走訪的串列。

效能分析

使用 perf