HDOJ 2020 絕對值排序

2021-08-13 19:27:31 字數 812 閱讀 3748

簡單的排序題目,只是要注意是對數的絕對值進行排序。我這採用的是插入排序+隨機化快速排序進行排序(只使用隨機化快排的話,函式遞迴的深度有點嚇人,為了減小遞迴的深度,在對少量元素進行排序的時候採用插入排序)。直接使用c/c++標準庫提供的排序方法其實還比較麻煩。其實像這樣不是很繁瑣的基礎演算法,最好是自己重新寫,也算是加深印象吧。

#include #include #include void quicksort(int, int, int);

int partition(int, int, int);

void insertionsort(int, int, int);

void exchange(int &, int &);

int data[100 + 5];

//#define yangyuan

int main()

printf("\n");

} return 0;

}void quicksort(int data, int low, int high)

else

insertionsort(data, low, high); }}

int partition(int data, int low, int high)

} exchange(data[i], data[high]);

return i;

}inline void exchange(int &a, int &b)

void insertionsort(int data, int low, int high)

}

HDOJ 2020 絕對值排序!

題目鏈結 problem description 輸入n n 100 個整數,按照絕對值從大到小排序後輸出。題目保證對於每乙個測試例項,所有的數的絕對值都不相等。input 輸入資料有多組,每組佔一行,每行的第乙個數字為n,接著是n個整數,n 0表示輸入資料的結束,不做處理。output 對於每個測...

(HDOJ 2020)絕對值排序

絕對值排序 problem description 輸入n n 100 個整數,按照絕對值從大到小排序後輸出。題目保證對於每乙個測試例項,所有的數的絕對值都不相等。input 輸入資料有多組,每組佔一行,每行的第乙個數字為n,接著是n個整數,n 0表示輸入資料的結束,不做處理。output 對於每個...

(HDOJ 2020)絕對值排序

絕對值排序 problem description 輸入n n 100 個整數,按照絕對值從大到小排序後輸出。題目保證對於每乙個測試例項,所有的數的絕對值都不相等。input 輸入資料有多組,每組佔一行,每行的第乙個數字為n,接著是n個整數,n 0表示輸入資料的結束,不做處理。output 對於每個...