LeetCode如何调整数组顺序使得奇数位于偶数前面

这篇文章主要介绍LeetCode如何调整数组顺序使得奇数位于偶数前面,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

创新互联专注于新源企业网站建设,响应式网站,购物商城网站建设。新源网站建设公司,为新源等地区提供建站服务。全流程定制网站开发,专业设计,全程项目跟踪,创新互联专业和态度为您提供的服务

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

思路一:创建两个数组分别存放奇偶数,奇数进入v1,偶数进入v2,最后在合并

代码:

void reOrderArray(vector &array)
{
        vector v1;
        vector v2;  
        for(int i=0;i

思路二:利用插入排序的方式来插入奇数

代码:

void reOrderArray(vector &array) 
{
  for (int i = 1; i < array.size(); i++)
  {
   int tmp = array[i];
   if (tmp % 2 == 1)
   {
     for (int j = i; j > 0; j--)
     {
       if (array[j - 1] % 2 == 0)
       {
          int t = array[j];
          array[j] = array[j - 1];
          array[j - 1] = t;
       }
     }
    }
   }
}

以上是“LeetCode如何调整数组顺序使得奇数位于偶数前面”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联行业资讯频道!


当前题目:LeetCode如何调整数组顺序使得奇数位于偶数前面
转载来于:http://ybzwz.com/article/ihpjjc.html