How To - 如何 Sort 1D、2D Array?


圖片程式版本:LabVIEW 2013
範例程式版本:LabVIEW 8.6


首先介紹簡單的 Sort 1D Array,利用 block diagram >> Programming >> Array >> Sort 1D Array 這個元件直接達到排序的功能。

例如使用亂數建立一個 1x100 的陣列,再將這個陣列進行排序。






接下來介紹的是比較麻煩的 Sort 2D Array。
例如 CH 1 是一筆亂數, CH2 是一個遞增數值,當這個 2D 陣列需要依據 CH1 來進行排序的時候,Sort 1D Array 這個功能卻不支援 2D 陣列的排序。




因此我們必須換個方式,



Sort 1D Array 的功能裡說明,他可以進行叢集的排序,並且依照叢集的第一個物件進行排序。因此我們就把 2D Array 改成叢集的方式來完成這個功能。

首先將陣列轉置,




接下來利用 For loop 建立叢集,




此時可以看到叢集內每一個元素都包含著原本 2D Array 中的元素,且維度為 1D,所以就可以利用 Sort 1D Array 進行排序。




最後再將叢集恢復為 2D Array 即可。




同樣的,當 NxM 的陣列,當需要針對某個行或列進行排序的時候,就可以利用這個方法來完成二維陣列的排序。

簡單的範例程式在這邊下載。