输入一串用空格隔开的数字串,对于数字串的奇数位按升序排序,偶数位按降序排序.

示例输入:

4 6 2 3 6 7 8 1

处理过程:

奇数位:4 2 6 8 升序排序结果: 2 4 6 8

偶数位:6 3 7 1 降序排序结果: 7 6 3 1

结果输出:2 7 4 6 6 3 8 1

 
demo:
import java.util.*;

public class Main {
public static void main(String args[]) {
Scanner scan = new Scanner(System.in);
String inStr = scan.nextLine();
scan.close();
String[] strs = inStr.split(" ");
int N = strs.length;
int[] inNums = new int[N];
for (int i = 0; i < N; i++) {
inNums[i] = Integer.parseInt(strs[i]);
// System.out.println(strs[i]);
} int tmp = 0;
//奇数位升序
for (int i = 0; i < N - 1; i = i + 2) {
for (int j = i; j < N - 1; j = j + 2) {
if (inNums[i] > inNums[j]) {
tmp = inNums[i];
inNums[i] = inNums[j];
inNums[j] = tmp;
}
}
}
//偶数位降序
for (int i = 1; i < N - 1; i = i + 2) {
for (int j = i; j < N - 1; j = j + 2) {
if (inNums[i] < inNums[j]) {
tmp = inNums[i];
inNums[i] = inNums[j];
inNums[j] = tmp;
}
}
} for (int i = 0; i < N; i++) {
System.out.print(inNums[i]);
System.out.print(" ");
} } }

最新文章

  1. ArcGIS Engine开发之地图基本操作(3)
  2. wps恢复经典模式
  3. git 查看某文件的修改历史
  4. unreal slate 创建 window
  5. 学习PHP 逛的几个网站。
  6. linux程序调试命令strace
  7. 记录对依赖注入的小小理解和autofac的简单封装
  8. CSS transform-style属性实现3D效果
  9. javaMail创建邮件和发送邮件总结
  10. Android 获取TextView 显示的字符串宽度
  11. Net中的AOP
  12. quick-cocos2d-x endToLua 退出会卡住
  13. .NET 二维码生成(ThoughtWorks.QRCode)【转发jiangys】
  14. Python小代码_4_省市区三级菜单
  15. 初学Python(二)
  16. 【转载】奇异值分解(SVD)计算过程示例
  17. android 退出程序解决内存释放so的问题
  18. 查看Redis集群主从对应关系工具
  19. npm WARN saveError ENOENT: no such file or directory
  20. 【.Net】exe加密/加壳工具.Net Reactor

热门文章

  1. 基于多用户的Oracle数据泵导入导出数据
  2. Vue和element-ui结合的简单使用
  3. 682. Baseball Game (5月28日)
  4. Zabbix——设置阈值和报警
  5. Python Homework 001
  6. flask第三方插件WTForms
  7. YII2集成GOAOP,实现面向方面编程!
  8. Linux字符设备学习,总结
  9. jz2440_lcd
  10. 由OpenResty粘合的企业Web架构