专栏首页个人分享调整数组顺序使奇数位于偶数前面

调整数组顺序使奇数位于偶数前面

输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。

思路:类似于插入排序。

package practice;
public class test {
	private static void reOrderArray(int[] arr) {
		 
        for (int i = 0; i < arr.length; i++) {
        	int a = arr[i];
            if (arr[i] % 2 == 1) {
                if (i > 0) {
                    int temp = arr[i];
                    for (int m = i; m >= 0; m--) {
 
                        if (arr[m - 1] % 2 == 0) {
                            arr[m] = arr[m - 1];
                        } else {
                            arr[m] = temp;
                            break;
                        }
 
                    }
                    if (arr[0] % 2 == 0) {
                        arr[0] = arr[i];
                    }
 
                }
 
            }
 
        }
 
        for (int i = 0; i < arr.length; i++) {
 
            System.out.println(arr[i] + " ");
        }
 
    }
	public static void main(String args[]){
		int[] array = {1,4,4,5,9,8};
		test test = new test();
		test.reOrderArray(array);
	}
}
 public void reOrderArray(int [] array) {
        for(int i = 0;i<array.length;i++){
            for(int j = array.length-1;j>i;j--){
            if(array[j-1]%2 == 0&&array[j]%2 == 1){
                int temp = 0;
                temp = array[j-1];
                array[j-1] = array[j];
                array[j] = temp;
            }
            }
        }
    }
     
}

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Hbase集群搭建及所有配置调优参数整理及API代码运行

      最近为了方便开发,在自己的虚拟机上搭建了三节点的Hadoop集群与Hbase集群,hadoop集群的搭建与zookeeper集群这里就不再详细说明,原来的笔...

    用户3003813
  • Hbase与hive整合

    //hive与hbase整合 create table lectrure.hbase_lecture10(sname string, score int) st...

    用户3003813
  • Hadoop常用命令

    HDFS基本命令: hadoop fs -cmd cmd: 具体的操作,基本上与UNIX的命令行相同 args:参数 HDFS资源URI格式: scheme:/...

    用户3003813
  • 浙大版《C语言程序设计(第3版)》题目集 习题7-1 选择法排序

    C you again 的博客
  • 归并排序

    用户6055494
  • PHP对数组进行排序操作

    昨天别人问了我一个问题,瞬间把我给问懵了。事情是这样的,问我给到一个既定数组,现在让我实现下将数组元素从低到高升序排列。第一个反应是直接使用ksort之类排序函...

    世纪访客
  • 你知道和你不知道的冒泡排序

    我看过的很多的文章都把冒泡排序描述成我们喝的汽水,底部不停的有二氧化碳的气泡往上冒,还有描述成鱼吐泡泡,都特别的形象。

    SH的全栈笔记
  • 字符串替换

    每行数据是一个字符串,长度不超过1000  数据以EOF结束输出对于输入的每一行,输出替换后的字符串样例输入

    书童小二
  • 基本排序算法(冒泡排序 选择排序 插入排序 快速排序 归并排序 基数排序 希尔排序)

    项目地址:https://github.com/windwant/windwant-service/tree/master/algorithm

    WindWant
  • 5个数求最值

    输入输入只有一组测试数据,为五个不大于1万的正整数输出输出两个数,第一个为这五个数中的最小值,第二个为这五个数中的最大值,两个数字以空格格开。样例输入

    书童小二

扫码关注云+社区

领取腾讯云代金券