奇數下標為奇數偶數下表為偶數

2021-10-23 23:10:07 字數 616 閱讀 3887

給定乙個長度不小於2的陣列arr,實現乙個函式調整arr,要麼讓所有的偶數下標都是偶數,要麼讓所有的奇數下標都是奇數

注意:1、陣列下標從0開始!

2、本題有special judge,你可以輸出任意一組合法解!同時可以證明解一定存在

[要求]

時間複雜度為o(n)o(n),額外空間複雜度為o(1)o(1)

#include#includeusing namespace std;

void swap(vector& arr, int index1, int index2)

void sortbyindexoddandeven(vector&arr, int n)

int even=0;

int odd=1;

int end=n-1;

while(even<=end && odd<=end)else

}return;

}int main()

sortbyindexoddandeven(arr, n);

for(auto num:arr)

cout

return 0;

}

奇數下標都是奇數或者偶數下標都是偶數

created by lxw,liwei4939 126.com on 2017 11 3.奇數下標都是奇數或者偶數下標都是偶數 最後位置是偶數,就向偶數下標傳送,否則就向奇數下標傳送 如果偶數下標或者奇數下標無法再向右移動,迴圈結束 public class evenandodd int even...

奇數下標都是奇數或者偶數下標都是偶數

給定乙個長度不小於2的陣列arr,實現乙個函式調整arr,要麼讓所有的偶數下標都是偶數,要麼讓所有的奇數下標都是奇數 注意 1 陣列下標從0開始!2 本題有special judge,你可以輸出任意一組合法解!同時可以證明解一定存在 要求 時間複雜度為o n o n 額外空間複雜度為o 1 o 1 ...

轉換陣列使奇數字為奇數 偶數字為偶數

設定 odd even兩個標誌位為odd為1,even為0,然後從最後一位開始看,如果說最後一位為偶數,就和even位交換,even自增2,如果是奇數,則和odd位交換,odd自增2,一直到二者其中乙個越界位置。解法比較奇特。include include include using namespa...