使奇數位於偶數前面
import java.util.Arrays;
/**
* 使奇數位於偶數前面
* 輸入一個整型陣列,實現一個方法來調整該陣列中的元素的順序,
* 使得所有奇數位於陣列的前半部分,所有偶數位於陣列的後半部分。
* @date 2020/10/03
**/
public class 使奇數位於偶數前面 {
/**
* 使奇數位於偶數前面
* @param array 需要調整奇偶數位置的陣列
*/
public static void reOrderArray(int[] array) {
// 1.處理arr為null的情況
if (array == null) {
throw new NullPointerException("空指標異常,array:" + array);
}
// 2.定義兩個下標,min的初始值為0,max的初始值為arr.length - 1
int min = 0;
int max = array.length - 1;
// 3.定義一個迴圈,用於調整陣列中奇偶數的位置
while (min < max) {// 如果min小於max,則一直調整陣列中元素的位置
// 4.讓min從前往後找,如果arr[min]的值為偶數,則停止查詢
while (min < max && array[min] % 2 != 0) {
min++;
}
// 5.讓max從後往前找,如果arr[max]的值為奇數,則停止查詢
while (min < max && array[max] % 2 == 0) {
max--;
}
// 6.如果min的值不等於max,則交換arr[min]和arr[max]的值
if (min != max) {
int temp = array[min];
array[min] = array[max];
array[max] = temp;
}
}
}
/**
*新開一個陣列空間
* @param nums
* @return
*/
public int[] exchange(int[] nums) {
if (nums==null||nums.length==0){
return nums;
}
int left=0;
int right=nums.length-1;
int[] res=new int[nums.length];
for (int i = 0; i < nums.length; i++) {
if ((nums[i]&1)==0){//偶數
res[right--]=nums[i];
}else{
res[left++]=nums[i];
}
}
return res;
}
public static void main(String[] args) {
int[] array = {1, 2, 3, 4, 5, 6, 7, 8, 9};
使奇數位於偶數前面.reOrderArray(array);
System.out.println(Arrays.toString(array));
}
}
相關文章
- JZ-013-調整陣列順序使奇數位於偶數前面陣列
- 【劍指Offer】調整陣列順序使奇數位於偶數前面陣列
- 【C語言】調整陣列使奇數全部都位於偶數前面。C語言陣列
- 劍指 Offer 21. 調整陣列順序使奇數位於偶數前面陣列
- [每日一題] 第十一題:調整陣列順序使奇數位於偶數前面每日一題陣列
- LeetCode題解(Offer21):調整陣列順序使奇數位於偶數前面(Python)LeetCode陣列Python
- 面試題21:調整陣列順序奇數位於偶數前面面試題陣列
- 面試演算法題(4)--將一個整數陣列中的所有奇數放到偶數前面面試演算法陣列
- 1295 統計位數為偶數的數字
- 統計位數為偶數的數字(C++)C++
- 面試題 - 使用執行緒交替列印奇數偶數面試題執行緒
- 面試題-使用執行緒交替列印奇數偶數面試題執行緒
- Table tr 奇數偶數行漸變色Jquery實現jQuery
- R語言中如何抽取向量的偶數項或者奇數項R語言
- 2022管綜數學-考點1:奇數、偶數、實數運算,考點 2:質數、合數
- 1到100迴圈,並把奇數放到陣列中,把偶數放到map中陣列
- 奇升偶降
- 編寫類 AA ,有一個方法:判斷一個數是奇數 odd 還是偶數, 返回 booleanBoolean
- 在頁面中的應該使用奇數還是偶數的字型?為什麼呢?
- 偶數求和 hd 2015
- sqlserver資料庫中如果對數值型的欄位進行小數點保留兩位,如果是小於1的數,前面的0消失解決方案SQLServer資料庫
- c語言 將一個陣列中的奇數和偶數分開放在一起C語言陣列
- 找出N以內的偶數
- 怎麼判斷Python數字中的偶數Python
- [Python] 傳遞引數前面的*或**Python
- PHP 如何給數字前面補零 ,固定位數補0PHP
- 尤拉計劃709:偶數袋
- 2032 奇數求和
- 數字分頻器設計(偶數分頻、奇數分頻、小數分頻、半整數分頻、狀態機分頻|verilog程式碼|Testbench|模擬結果)
- 全正數偶數斐波那契數列最高層製作方法
- Pytnon變數print列印計數顯示前面補零 0001、0002變數
- 數數的位數(正整數)
- 四位整數位數拆分
- 第三章:查詢與排序(下)------------- 3.8題解_調整陣列順序-奇數在左偶數在右排序陣列
- 求陣列內所有偶數的和陣列
- 「圖譜謎宮」(逢偶數日期更新)
- 求1000以內所有偶數的和
- Vue中使用js實現保留小數的奇入偶不入,四捨六入的計算VueJS