資料結構 陣列排序

2021-10-08 21:06:50 字數 967 閱讀 2478

已知陣列a[n]中元素為整型,設計演算法將其調整為左右兩部分,左邊所有元素為奇數,右邊所有元素為偶數。

輸入

輸出

1 9 3 7 5 6 8 4 2
//已知陣列a[n]中元素為整型,設計演算法將其調整為左右兩部分

//左邊所有元素為奇數,右邊所有元素為偶數

//3 9 1 7 5 2 6 8 4

#include#includeusing namespace std;

int main()

; int tmp = 0;

for (int i = 0; i < 9; i++)

}} for (int i = 0; i < 9; i++)

cout << endl;

return 0;

}

在小節3中的**,奇數和偶數的搜尋都是從陣列左端開始的,在搜尋的過程中,不可避免地出現了一些重複。這增大了搜尋的時間複雜度。下面我們給出從陣列兩端進行搜尋的**:

//已知陣列a[n]中元素為整型,設計演算法將其調整為左右兩部分

//左邊所有元素為奇數,右邊所有元素為偶數

//3 9 1 7 5 2 6 8 4

#include#includeusing namespace std;

int main()

; int i = 0;

int j = 8;

int tmp = 0;

while (i < j) }

for (int i = 0; i < 9; i++)

cout << endl;

return 0;

}

在參考其他的**時,筆者發現即使整型陣列訪問越界,vs 2017也沒有報錯,不知道是什麼原因。接下來,計畫對這方面的問題進行**。

資料結構 陣列(三) 氣泡排序

在實際開發中,有很多場景需要我們將陣列元素按照從大到小 或者從小到大 的順序排列,這樣在查閱資料時會更加直觀,例如 乙個儲存了班級學號的陣列,排序後更容易分割槽好學生和壞學生 乙個儲存了商品單價的陣列,排序後更容易看出它們的價效比。以從小到大排序為例,氣泡排序的整體思想是這樣的 演算法思想 從陣列頭...

資料結構 排序

小小總結了下 希望別不記得 排序型別 排序方法 平均時間 最壞時間 最好時間 穩定空間 插入直接插入 o n2 o n2 o n 穩定o 1 希爾排序 o n3 2 增量序列最後為1,只有公因子1 不穩o 1 選擇簡單選擇 o n2 o n2 o n 穩定o 1 堆排序o n lb n o n lb...

資料結構 排序

郝斌版 資料結構 學習筆記 冒泡 公升序,12比,大放後面,再23比,直至最大的在最後面 插入 2,3,4,依次插入值,保證插入值後的序列為有序的 選擇 後面所有的最小值依次排到最前 快速排序 歸併排序 22排,44排,88排.排序演算法標準 時間,空間,穩定性 排序和查詢的關係 排序是查詢的前提,...