《剑指offer》调整数组顺序使奇数位于偶数前面
生活随笔
收集整理的這篇文章主要介紹了
《剑指offer》调整数组顺序使奇数位于偶数前面
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目:輸入一個整數數組,實現一個函數來調整該數組中數字的順序,使得所有的奇數位于數組的前半部分,所有的偶數位于位于數組的后半部分,并保證奇數和奇數,偶數和偶數之間的相對位置不變。
解法一:用兩個list分別存儲奇數以及偶數,然后合并list,再把list存到原來的數組里
import java.util.ArrayList; import java.util.Collections; import java.util.List; public class Solution {public void reOrderArray(int [] array) {List<Integer> list1 = new ArrayList<>();//存儲奇數List<Integer> list2 = new ArrayList<>();//存儲偶數for(int i:array){if(i%2!=0){list1.add(i);}else{list2.add(i);}}list1.addAll(list2);for(int i=0;i<array.length;i++){array[i]=list1.get(i);}} }
public class Solution {public void reOrderArray(int [] array) {for(int i= 0;i<array.length-1;i++){for(int j=0;j<array.length-1-i;j++){if(array[j]%2==0&&array[j+1]%2==1){int t = array[j];array[j]=array[j+1];array[j+1]=t;}}}} }
總結
以上是生活随笔為你收集整理的《剑指offer》调整数组顺序使奇数位于偶数前面的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 《剑指offer》数值的整数次方
- 下一篇: 《剑指offer》链表中倒数第k个结点