2. 对数组排序,使得a1<=a2>=a3<=a4>=... 也是很简单的O(n),注意写的时候不用swap元素。。。
2015-07-28 12:16
405 查看
<span style="font-size:18px;">1.维护一个flag标志进行一次遍历就可以了</span>
int[] sortArray(int[] s){int n = s.length;boolean flag = true;int current = s[0];for (int i = 0; i < n-1; i++){if (((flag) &&(current > s[i+1])) || ((!flag) && (current < s[i+1])){s[i] = s[i+1];}else{s[i] = current;current = s[i + 1];}flag = !flag;}s[n-1] = current;return s;}2.利用快排的思想将数组分成两半,然后一边取一个这样取,不确定这个思路是否有问题,欢迎指正??
相关文章推荐
- hihgcharts使用
- [git] fatal: This operation must be run in a work tree
- 自动检查点(Automatic Checkpointing)
- ssh端口修改
- Python中subprocess的简单使用示例
- python播放音乐
- FreeSWITCH初识
- 安卓弹出提示框的属性和自定义宽度和高度的疑问
- golang 类型转换
- apache配置文件爱你
- freeswitch的优势
- weblogic异常之ClassNotFoundException: org.hibernate.hql.ast.HqlToken
- HDU 1237 简单计算器
- netty4源码分析——NioEventLoop
- LANMP安装
- css div重叠 CSS让DIV层叠 两个DIV或多个DIV顺序重叠加
- ubuntu14.04下wii模拟器(龙珠电光火石3)
- hadoop2.7.1 nutch2.3 二次开发windows环境
- [Android] WebView内的本地网页,使用XMLHttpRequest读取本地档案
- iOS开发ViewController与Swift类绑定