基础编程题之奇数位(偶数位)都是奇数(偶数)
文章目录
- 题目
- 解题思路
- 代码
- 注意
题目
牛客
解题思路
题目的意思是给定一个数组arr,让你调整它,最终这个数组必须满足奇数位上的数字必须是奇数,偶数位上的数字必须是偶数,其中1,3,5,7…算作奇数位,0,2,4,6,8…算作偶数位
这道题不难,但是大家在解决时可能会想得过于麻烦。我们可以让变量i永远指向偶数位,变量j永远指向奇数位,如果偶数位上是偶数,奇数位上是奇数那么就略过,反之直接交换两个出现矛盾的位置的数字即可
代码
class Solution {public:void oddInOddEvenInEven(vector<int>& arr, int len) {int i=0;int j=1;//i和j分别指向偶数位和奇数位while(i<len && j<len){if(arr[i]%2==0)//如果偶数位上是偶数,略过{i+=2;continue;}if(arr[j]%2!=0)//如果奇数位上是奇数,略过{j+=2;continue;}swap(arr[i],arr[j]);//出现矛盾,就代表奇数位上偶数,偶数位上奇数,那么只需交换即可}}
};
注意
这道题在牛客网上容易出现误判,往往会因为结果没问题但是就是与题目给出的预期答案的顺序无关从而误判
基础编程题之奇数位(偶数位)都是奇数(偶数)相关推荐
- 基础编程题之二进制插入(位运算)
题目 题目的意思是给出n和m的二级制,要求把m的二进制数字插入到n的二进制的第j位到第i位(从右向左),它保证n的第j位和第i位均为0 这道题我在开始做的时候,没有注意到它保证了n的第j位和第i位均为 ...
- 华为机试题python版节选(基础编程题)
前言 自学python之后,可以借助这些企业招聘时的机考题目来锤炼一下实践能力.. 每道题含要点解析,是按照自己理解梳理的,多个答案的是结合自己的答案+网上的答案,不一定很严谨,请读者自行在编译器中调 ...
- PTA-然后是几点(基础编程题)
PTA-然后是几点(基础编程题) 有时候人们用四位数字表示一个时间,比如1106表示11点零6分.现在,你的程序要根据起始时间和流逝的时间计算出终止时间. 读入两个数字,第一个数字以这样的四位数字表示 ...
- c语言基础编程题文库,C语言基础编程题资料.doc
C语言基础编程题资料.doc |5-1 求幂之和 15 分本题要求编写程序,计算 sum21 22 23 cdots 2nsum2122232n.可以调用 pow 函数求幂.输入格式输入在一行中给出正 ...
- C语言基础编程题——喝水问题,译码问题
C语言基础编程题--喝水问题,译码问题 有这样一道智力题:"某商店规定:三个空汽水瓶可以换一瓶汽水.小张手上有十个空汽水瓶,她最多可以换多少瓶汽水喝?"答案是5瓶,方法如下:先用9 ...
- 判断三角形java代码_java基础编程题之异常处理
以下是刚开始学习java的基础编程题,每天持续更新java每个知识点的题目,持续练习,不断提高java基本功,培养编程能力.今天的练习的十八题是java的异常处理的使用. 1.检测年龄不能为负数和大于 ...
- 实体类 接口_Java 语言基础编程题 (二维数组, 五子棋游戏, 实体类和接口)
原文:Java 语言基础编程题 (二维数组, 五子棋游戏, 实体类和接口, 视频讲解) 这里分享三道编程题, 下面是我个人的视频讲解 二维数组, 五子棋游戏, 实体类和接口_哔哩哔哩 (゜-゜)つロ ...
- C++基础编程题(27)输入一个数字,为其高,一个符号*,输出该符号组成的平行四边形形状
C++基础编程题(27)输入一个数字,为其高,一个符号*,输出该符号组成的平行四边形形状
- 基础编程题(1~5)
基础编程题(1~5) 01.斐波那契数列 1.1.程序分析 1.2.代码实现 02.判断素数(Prime number) 2.1.程序分析 2.2.代码实现 2.3.科普小课堂:素数 2.3.1.素数 ...
- 有n个人围成一圈 顺序排号 java_java基础编程题有n个人围成一圈顺序排号
下面给大家带来的这道编程题可以算得上是一道非常基础的java编程题目,刚刚开始接触java编程的小伙伴一起来看看具体的题目以及解题方法吧. 下面是具体的题目,题目还是非常的简单的. 一.题目 有n个人 ...
最新文章
- 【下有对策】verycd没有的资源有很多方法下载
- URAL - 1114-Boxes (分步乘法原理)
- (上)python3 selenium3 从框架实现代码学习selenium让你事半功倍
- [渝粤教育] 中国地质大学 结构力学 复习题
- 《全数据时代的炼金师》全书语言生动、易懂
- python中怎么安装sklearn_如何安装Sklearn for Reinteract?
- 初试Octave软件
- 【英语学习】【Daily English】U09 Fashion L03 You're my fashion icon
- es过滤指定数据 java_elasticsearch 结构化搜索_在案例中实战基于range filter来进行范围过滤...
- 十天精通CSS3学习笔记 part3
- BIM族库下载——Revit栏杆族库
- word文档创建及在线预览方法
- C4D R25版本的新特性+下载体验
- 数据模型及E-R模型
- 幻灯片制作去除模板背景
- Spring 最新漏洞修复
- 详解Django的Models(django基础四)
- Android项目中创建马甲包
- 微信小游戏制作坦克大战(四)添加敌方坦克,敌方坦克可以随机移动
- 自编码器的原理及实现
热门文章
- 项目下创建文件_Linux 下创建和使用交换文件
- 嵌入式开发板02---点亮LED升级版
- Celaref | 单细胞测序细胞类型注释工具
- Option键用的好,鼠标用的少(这6个你绝对不知道的...)
- if函数python作用_if __name__== __main__ 的意思(作用)python代码复用
- P5726 【深基4.习9】打分(python3实现)
- 1.9 编程基础之顺序查找 11 连续出现的字符 python
- js原生实现过渡效果的返回顶部功能实例
- centos6配置mysql远程访问_Linux服务器配置-VSFTP服务配置(六)
- 【ES6(2015)】Reflect