lintcode(144)交错正负数
来源:互联网 发布:php self this区别 编辑:程序博客网 时间:2024/05/21 14:50
描述:
给出一个含有正整数和负整数的数组,重新排列成一个正负数交错的数组。
样例:
给出数组[-1, -2, -3, 4, 5, 6]
,重新排序之后,变成[-1, 5, -2, 4, -3, 6]
或者其他任何满足要求的答案
思路:
先确定正负数个数,那个多,从哪个开始。然后建立首尾两个指针,从前开始排序,反复从最后挑选所需的正数或负数
class Solution { /** * @param A: An integer array. * @return: void */ public void rerange(int[] A) { // write your code here int start = 0; int len = A.length; int end = len - 1; int count = 0; for(int i =0;i<len;i++){ if(A[i] > 0){ count++; } } boolean flag = false; if(count > len/2){ flag = true; } while(start < len){ end = len - 1; if(!flag){ while(len > start){ if(A[end] < 0){ int temp = A[start]; A[start] = A[end]; A[end] = temp; flag = true; start++; break; }else{ end--; } } }else{ while(len > start){ if(A[end] > 0){ int temp = A[start]; A[start] = A[end]; A[end] = temp; flag = false; start++; break; }else{ end--; } } } } }}
0 0
- lintcode-交错正负数-144
- lintcode 144交错正负数
- lintcode(144)交错正负数
- LintCode-交错正负数
- LintCode 交错正负数
- lintcode --交错正负数
- LintCode:交错正负数
- *[Lintcode]Interleaving Positive and Negative Numbers 交错正负数
- 交错正负数
- 题目:交错正负数
- 交错正负数
- 交错正负数
- 交错正负数
- Java实现-交错正负数
- 144.Interleaving Positive and Negative Numbers-交错正负数(中等题)
- 统计正负数个数
- 正负数二进制计算
- 算法:区分正负数
- ubuntu安装tpcc-mysql
- Hashmap 和Hashtable的之间的差异
- Ubuntu编译droidVNCServer
- EN300468标准 DVB系统的服务信息规范 最新文档下载
- JavaSE总结(一)
- lintcode(144)交错正负数
- thinkphp3.2 $Page->rollPage=5; //控制最大页码显示数
- session共享
- 科锐课堂笔记:2017/4/25 异常
- PLSQL的使用
- useradd和groupadd 详解
- 基础学习day07--broadcastReceiver
- 在Windows下编译扩展OpenCV 3.1.0 + opencv_contrib
- Android开发集成微信分享