一道简单的把ArrayList中的正负数组分开并求得边界索引的题目
2024-08-28 20:31:56
给定一个List,里面存放的一组整数有正数和负数,要求把正数和负数分开,并得到正数和负数分割线索引(不要求排序,不能使用多层循环)
解答方法并不算太复杂,重点注意边界条件和极端条件(全是正或者全是负)
/**
* 给定一个List,里面存放的一组整数有正数和负数,要求把正数和负数分开,并得到正数和负数分割线索引(不要求排序,不能使用多层循环)
*/
private void testLeft() {
ArrayList<Integer> list = new ArrayList<Integer>();
// for(int i = 0;i < 200;i++){
list.add(1);
list.add(-5);
list.add(33);
list.add(-21);
list.add(12);
list.add(-9);
list.add(-999);
//// }
// list.add(-5);
// list.add(-5);
// list.add(-5);
// list.add(-5);
// list.add(-5);
// list.add(-5);
// list.add(-5);
int len = list.size();
Log.i("xinye", "#######移动前:" + list);
int index = 0;
for(int i = 0;i < len;i++){
if(i != 0){
if(i == len - 1){
if(list.get(i) < 0){
index++;
}
}else{
if(list.get(i) < 0){
list.add(0, list.get(i));
// 注意set和remove的时候的索引值
list.set(i + 1, list.get(list.size() - 1));
list.remove(list.size() - 1);
index++;
}
}
}else{
if(list.get(i) < 0){
index++;
}
}
}
Log.i("xinye", "#######移动后:" + list);
Log.i("xinye", "#######索引:" + index); }
最新文章
- web前端基础知识-(四)DOM
- 写了cookie阻止通过输入地址直接访问下一个html,但是直接输入地址访问时,会闪一下下一个页面,怎么回事啊????、
- javase基础笔记4——异常/单例和类集框架
- iOS图片攻略之:有3x自动生成2x 1x图片
- C#.net在后台执行javascript
- python 统计单词个数
- java20 创建服务器:ServerSocket
- [Unity3D]Unity3D游戏开发之鼠标滚轮实现放大缩小
- [转载]VMWare网络连接透析
- 软件源(Software Sources)
- hdu1114(完全背包)
- ThinkPHP创建应用的一般开发流程
- 6、ABPZero系列教程之拼多多卖家工具 框架后台的设置
- IOS开发之XCode学习011:UISwitch控件
- python之路day08--文件的操作
- 【面试篇】资深招聘HR有哪些面试技巧?
- ubuntu-14.04安装最新tensorflow记录
- 六. Redis发布订阅机制
- Linux终端命令
- Haproxy全透明代理