Java练习 SDUT-1188_各位数字之和排序
C语言实验——各位数字之和排序
Time Limit: 1000 ms Memory Limit: 65536 KiB
Problem Description
给定n个正整数,根据各位数字之和从小到大进行排序。
Input
输入数据有多组,每组数据占一行,每行的第一个数正整数n,表示整数个数,后面接n个正整数。当n为0时,不作任何处理,输入结束。n<=10
Output
输出每组排序的结果。
Sample Input
2 1 2
3 121 10 111
0
Sample Output
1 2
10 111 121
可以开两个数组,一个存储原数字,一个存储各位数字之和,然后排序是一起变动就可以,不过想到了C里的结构体,Java的类也是类似的功能。
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner cin = new Scanner(System.in);
num[] a = new num[15];
num t = new num();
int n,i,j;
for(i=0;i<15;i++)
a[i] = new num();
while(cin.hasNextInt())
{
n = cin.nextInt();
if(n==0)
break;
for(i=0;i<n;i++)
{
a[i].x = cin.nextInt();
a[i].b = a[i].f();
}
for(i=0;i<n;i++)
for(j=0;j<n-i-1;j++)
if(a[j].b>a[j+1].b)
{
t = a[j];
a[j] = a[j+1];
a[j+1] = t;
}
for(i=0;i<n;i++)
if(i==n-1)
System.out.println(a[i].x);
else
System.out.print(a[i].x+" ");
}
cin.close();
}
}
class num
{
int x,b;
int f()
{
int a = x,sum = 0;
while(a!=0)
{
sum += a%10;
a /= 10;
}
return sum;
}
}
Java练习 SDUT-1188_各位数字之和排序的更多相关文章
- 用java求一个整数各位数字之和
/* * 用java求一个整数各位数字之和 */ public class Test02 { public static void main(String[] args) { System.out.p ...
- 用java刷剑指offer(数字在排序数组中出现的次数)
题目描述 统计一个数字在排序数组中出现的次数. 牛客网链接 java代码 //看见有序就用二分法 public class Solution { public int GetNumberOfK(int ...
- 【Java】 剑指offer(53-1) 数字在排序数组中出现的次数
正文 本文参考自<剑指offer>一书,代码采用Java语言. 更多:<剑指Offer>Java实现合集 题目 统计一个数字在排序数组中出现的次数.例如输入排序数组{1, ...
- 剑指Offer-36.数字在排序数组中出现的次数(C++/Java)
题目: 统计一个数字在排序数组中出现的次数. 分析: 给定一个已经排好序的数组,统计一个数字在数组中出现的次数. 那么最先想到的可以遍历数组统计出现的次数,不过题目给了排序数组,那么一定是利用了排序这 ...
- Java初学者作业——输入一个五位数字,计算各位数字之和并输出,运行结果为五个数字之和(实践2)
返回本章节 返回作业目录 需求说明: 编写Java程序,输入一个五位数字,计算各位数字之和并输出,运行结果为五个数字之和. 实现思路: (1)声明变量num,用于存储用户输入的数字. (2)通过Sca ...
- Java实现 LeetCode 129 求根到叶子节点数字之和
129. 求根到叶子节点数字之和 给定一个二叉树,它的每个结点都存放一个 0-9 的数字,每条从根到叶子节点的路径都代表一个数字. 例如,从根到叶子节点路径 1->2->3 代表数字 12 ...
- java程序 输入10个数字并求和
课程作业: 模仿JavaAppArguments.java示例,编写编写一个程序,此程序从命令行接受多个数字,求和之后输出结果. 设计思想: 先从命令行读出数字,然后计算各个数字之和.求出结果. 流程 ...
- 剑指offer-第六章面试中的各项能力(数字在排序数组中出现的次数)
题目:统计一个数字在排序数组中出现的次数. 思路:采用二分查找,找到该数字在数组中第一次出现的位置,然后再找到组后一个出现的位置.两者做减法运算再加1.时间复杂度为O(logn) Java代码: // ...
- 【剑指Offer】37、数字在排序数组中出现的次数
题目描述: 统计一个数字在排序数组中出现的次数.例如,输入排序数组{1,2,3,3,3,3,4,5}和数字3,由于数字3在该数组中出现了4次,所以函数返回4. 解题思路: 既然输入的数 ...
随机推荐
- Django项目:CRM(客户关系管理系统)--40--32PerfectCRM实现King_admin添加不进行限制
# forms.py # ————————19PerfectCRM实现King_admin数据修改———————— from django import forms from crm import m ...
- 火狐插件hostadmin
windows的host文件: c:\Windows\System32\drivers\etc\hosts 手动修改hosts文件费时又费力,可直接在FF附加组件中搜索hostadmin下载安装: ...
- Java中字符串为什么不以\0结尾
Java中字符串为什么不以\0结尾 其实这个问题没有什么好说的,Java里面一切都是对象,是对象的话,字符串肯定就有长度,即然有长度,编译器就可以确定要输出的字符个数,当然也就没有必要去浪费那1字节的 ...
- 【C++】从最简单的vector中sort用法到自定义比较函数comp后对结构体排序的sort算法
sort函数在使用中非常好用,也非常简单,而且效率与冒泡或者选择排序不是一个数量级.本文就sort函数在vector中的用法分为sort函数入门用法与自定义comp比较函数比较结构体这两个最基本的功能 ...
- mysql 索引优化 性能调优 锁
1 检查mysql 是否安装 rpm -qa|grep -i mysql 2 ntsysv 查看和设置开机启动列表 3 mysql 在 centos 上默认 的数据目录是 /var/lib/mysql ...
- vue打包之部署在非根路径下的三两事
首先,感叹一下,2019年已经过去一半,想想自己做了些什么,好像也没做什么. 今天试着配一个nginx,以前的nginx都是指向的/根路径,今天的nginx指向的非/根路径,遇到许多问题的,总结总结. ...
- jnhs 无法提交断点LineBreakpoint hibernate4CURD : -1, 原因是: 找不到 URL 'file:/E:/版本控制/Design-java/hibernate4CURD/' 的源根目录。请验证项目源的设置。
无法提交断点LineBreakpoint hibernate4CURD : -1, 原因是: 找不到 URL 'file:/E:/版本控制/Design-java/hibernate4CURD/' 的 ...
- MySQL数据库的全局锁和表锁
1.概念 数据库锁设计的初衷是处理并发问题.作为多用户共享的资源,当出现并发访问的时候,数据库需要合理地控制资源的访问规则.而锁就是用来实现这些访问规则的重要数据结构. 2.锁的分类 根据加锁的范围, ...
- python面向对象(二)
初始化方法 当使用 类名() 创建对象时,会 自动 执行以下操作: 为对象在内存中 分配空间 —— 创建对象 为对象的属性 设置初始值 —— 初始化方法(init) 这个 初始化方法 就是 __ini ...
- eclipse svn提交忽略文件及文件夹,ignore设置无效..
如果之前提交过此文件,就不能设置忽略该文件了.所以第一次提交的时候要搞清楚再提交. [亲测,的确如此,用 Windows -> Preferences -> Team -> Igno ...