打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
在Java数组中将数组中的奇数置后偶数置前(两种不同的方法实现)
问题:数组中将奇数置后偶数置前
解决思路:
方法1.
使用双重for循环,一层从前往后找奇数,另一一层从后往前找偶数,如果找到了使用中间变量交换两个的值,最终实现偶数在前基数在后。
源代码:
public class TransForm { public static void main(String[] args) { int[] array = {1,2,3,4,5,6,7,8,9,10,11,12,13}; transForm(array); for (int x : array) { System.out.println(x); } } public static int[] transForm(int[ ] array){ for (int i = 0; i <=array.length/2 ; i++) { for (int j = array.length-1;j>=array.length/2 ; j--) { if(array[i]%2!=0&&array[j]%2==0){ int temp = array[i]; array[i] = array[j]; array[j] = temp; } } } return array; }
方法2:
使用双重while循环,一层从前往后找奇数,另一一层从后往前找偶数,如果找到了使用中间变量交换两个的值,最终实现偶数在前基数在后。
源代码:
语言 方法
4136 Zin3A18763
lh6B0别人看不到我作品
5181 2010.01.24 17-29-52
public class TransForm2 { public static void main(String[] args) { int[] array = {1,2,3,4,5,6,7,8,9,10,11,12,13}; transForm(array); for (int x : array) { System.out.println(x); } } public static int[] transForm(int[] array){ int left = 0; int right = array.length-1; while(left<right){ while(left<right&&array[left]%2==0){ left++; } while(left<right&&array[right]%2!=0){ right--; } int temp = array[left]; array[left] = array[right]; array[right] = temp; } return array; } }
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
剑指offer 13 调整数组顺序使奇数位于偶数前面
每日一题 剑指offer(调整数组顺序)
对原数组a的每个元素计算其奇偶性0代表偶数1代表奇数
C语言实现将一个数组中的奇偶数分别存放
算法41(调整数组顺序使奇数位于偶数前面)
循环结构2
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服