博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
交错正负数
阅读量:6482 次
发布时间:2019-06-23

本文共 714 字,大约阅读时间需要 2 分钟。

给出一个含有正整数和负整数的数组,重新排列成一个正负数交错的数组。
TIME COMPLEXITY : O(n)
void rerange(vector
&A) { int cnt_pos = 0; for (int i = 0; i < A.size(); ++i) { if (A[i] > 0) { ++cnt_pos; } } bool pos_first = true; if (cnt_pos * 2 < A.size()) { pos_first = false; } int pos_idx = pos_first ? 0 : 1; int neg_idx = pos_first ? 1 : 0; while (pos_idx < A.size() && neg_idx < A.size()) { while (pos_idx < A.size() && A[pos_idx] > 0) { pos_idx += 2; } while (neg_idx < A.size() && A[neg_idx] < 0) { neg_idx += 2; } if (pos_idx < A.size() && neg_idx < A.size()) { swap(A[pos_idx], A[neg_idx]); } }}

转载地址:http://fdbuo.baihongyu.com/

你可能感兴趣的文章
InnoDB多版本
查看>>
贪心算法 - 活动选择问题
查看>>
独立思考与输入、吸收
查看>>
es6 includes(), startsWith(), endsWith()
查看>>
关于azkaban上传job压缩包报错问题的解决方案
查看>>
JS版日期格式化和解析工具类,毫秒级
查看>>
百度人脸对比
查看>>
Linux内存管理 一个进程究竟占用多少空间?-VSS/RSS/PSS/USS
查看>>
苹果AppStore如何申请加急审核
查看>>
SpringBoot 使用Swagger2打造在线接口文档(附汉化教程)
查看>>
Mysql一个表编码的坑,mark一下
查看>>
JS动态事件绑定问题
查看>>
在WPF应用程序中利用IEditableObject接口实现可撤销编辑的对象
查看>>
android 8 wifi wifi 扫描过程
查看>>
phalcon的save方法保存失败?
查看>>
获取任意链接文章正文 API 功能简介
查看>>
js中Math.random()生成指定范围数值的随机数
查看>>
线程类的常见方法介绍
查看>>
Spring连接数据库的几种常用的方式
查看>>
MS CRM 2011 Schedule Report & Email Subscription
查看>>