考研数据结构之数组(5.2)

您所在的位置:网站首页 试编写一算法实现将一个队列中的元素逆转 考研数据结构之数组(5.2)

考研数据结构之数组(5.2)

2024-07-10 12:25| 来源: 网络整理| 查看: 265

题目

设计一个算法,将数组A[0, .... , n-1]中所有奇数移动到偶数之前,要求不另增存储空间,且时间复杂度为O(n)。

分析

设置两个指针i和j, i从数组的左边往右边遍历,j从数组的右边往左边遍历,当i指向偶数,j指向奇数的时候,将A[i]与A[j]交换;当i大于等于j的时候,算法结束。

代码(这份代码有错,留作警示)

核心代码(这份代码有错):

/* 分离偶数与奇数,将奇数放到数组的前端,偶数放到后端 */ /* A[]指的是要分离的数组;n指的是数组元素的长度 */ void divide(int A[],int n) { int i=0;// i指向数组的第一个元素 int j=n-1;// j指向数组最后一个元素 int temp;// 作为临时存储变量 while(i


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3