java刷题(1-5)
第一题:在一个数组中找出三个数相加之和为0,且不重复的集合
import java.lang.reflect.Array;
import java.security.PublicKey;
import java.util.ArrayList;
import java.util.List;
import java.util.Arrays;
public class AddThreenumber {
public static List<List<Integer>> threenumber(int[] nums){
Arrays.sort(nums);
List<List<Integer>> ls = new ArrayList<List<Integer>>();
for (int i = 0; i < nums.length - 2; i++) {
if (i == 0 || (i > 0 && nums[i] != nums[i - 1])) { // 跳过可能重复的答案 int l = i + 1, r = nums.length - 1, sum = 0 - nums[i];
while (l < r) {
if (nums[l] + nums[r] == sum) {
ls.add(Arrays.asList(nums[i], nums[l], nums[r]));
while (l < r && nums[l] == nums[l + 1]) l++;
while (l < r && nums[r] == nums[r - 1]) r--;
l++;
r--;
} else if (nums[l] + nums[r] < sum) {
while (l < r && nums[l] == nums[l + 1]) l++; // 跳过重复值
l++;
} else {
while (l < r && nums[r] == nums[r - 1]) r--;
r--;
}
}
}
}
System.out.println(ls);
return ls;
}
public static void main(String[] args){
int[] nums={-1, 0, 1, 2, -1, -4};
threenumber(nums);
}
}
第二题:输入一个字符串,计算其中的大小写字母及数字的个数
import java.util.*;
public class Count { public static void main(String[] args){
System.out.println("请输入一串字符");
Scanner scan= new Scanner(System.in);
if(scan.hasNext()){
String i =scan.next();
int capital_numbercount=0,lower_numbercount=0,number=0;
for(int j=0;j<=i.length()-1;j++){
char s=i.charAt(j);
if('a'<=s&&'z'>=s){
lower_numbercount=lower_numbercount+1;
}
else if('A'<=s&&'Z'>=s){
capital_numbercount=capital_numbercount+1; }
else if('0'<=s&&'9'>=s){
number=number+1;
} }
System.out.printf("您所输入的字符串是:%s\n",i);
System.out.printf("其中大写字母的个数为:%d个\n",capital_numbercount);
System.out.printf("其中小写字母的个数为:%d个\n",lower_numbercount);
System.out.printf("其中整数的个数为:%d个\n",number); }
else{
System.out.println("请重新输入");
} } }
第三题:使用类及方法实现计算器加减乘除基本功能
import java.util.*;
public class Calc {
public float add(float a,float b){
return(a+b);
}
public float subtraction(float a,float b){
return(a-b);
}
public float multiplication(float a,float b){
return(a*b);
}
public float division(float a,float b){
return(a/b);
} public static void main(String[] args){
Calc calc=new Calc();
System.out.println("请输入两个数字");
Scanner scan=new Scanner(System.in);
float a = scan.nextFloat();
float b = scan.nextFloat();
float add=calc.add(a,b);
float Subtraction=calc.subtraction(a,b);
float Multiplication=calc.multiplication(a,b);
float Division = calc.division(a,b);
System.out.printf("%.2f+%.2f=%.2f",a,b,add);
System.out.printf("%.2f-%.2f=%.2f",a,b,Subtraction);
System.out.printf("%.2f*%.2f=%.2f",a,b,Multiplication);
System.out.printf("%.2f/%.2f=%.2f",a,b,Division);
}
}
第四题:输入数字n,计算小于等于该数字n的所有阶乘之和
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个整数:");
int number = 0;
int jc=1;
int result=0;
if (scanner.hasNextInt()) {
number = scanner.nextInt();
System.out.println("您输入的数字是:" + number);
for(int i=1;i<=number;i++){
for(int j=1;j<=i;j++){
jc *=j;
}
result=result+jc;
jc=1;
}
System.out.printf("小于整数%d的所有正整数阶乘之和是:%d",number,result);
}
else{
System.out.println("您输入的字符不合法");
}
scanner.close();
}
}
第五题:打印100-10000之间的回文数,并计算个数:
public class HuiWenshu {
public static void main(String[] args){
int count=0,number_1=0,number_2=0;
for(int i =100;i<=10000;i++){
if(i>=100&&i<=1000){
String s=Integer.toString(i);
char c=s.charAt(0);
char b=s.charAt(2);
if(c==b){
System.out.println(i);
number_1=number_1+1;
}
}
else if(i>1000&&i<=10000){
String s=Integer.toString(i);
char first=s.charAt(0);
char second=s.charAt(1);
char third=s.charAt(2);
char fourth=s.charAt(3);
if(first==fourth){
if(second==third){
System.out.println(i);
number_2=number_2+1;
}
}
}
}
count=number_1+number_2;
System.out.printf("100-10000之间的回文数一共有%d个",count);
}
}
java刷题(1-5)的更多相关文章
- JS、JAVA刷题和C刷题的一个很重要的区别
就是最近在做树方面的题时,发现JS和JAVA刷题和C刷题的一个很重要的区别就是传入null的区别 当遍历的时候,C传参数时可以传进去null的指针,因为递归进去,出来时,指针还是指着那个地方 但是JS ...
- 牛客网Java刷题知识点之为什么HashMap和HashSet区别
不多说,直接上干货! HashMap 和 HashSet的区别是Java面试中最常被问到的问题.如果没有涉及到Collection框架以及多线程的面试,可以说是不完整.而Collection框架的 ...
- 牛客网Java刷题知识点之为什么HashMap不支持线程的同步,不是线程安全的?如何实现HashMap的同步?
不多说,直接上干货! 这篇我是从整体出发去写的. 牛客网Java刷题知识点之Java 集合框架的构成.集合框架中的迭代器Iterator.集合框架中的集合接口Collection(List和Set). ...
- 牛客网Java刷题知识点之Map的两种取值方式keySet和entrySet、HashMap 、Hashtable、TreeMap、LinkedHashMap、ConcurrentHashMap 、WeakHashMap
不多说,直接上干货! 这篇我是从整体出发去写的. 牛客网Java刷题知识点之Java 集合框架的构成.集合框架中的迭代器Iterator.集合框架中的集合接口Collection(List和Set). ...
- 牛客网Java刷题知识点之ArrayList 、LinkedList 、Vector 的底层实现和区别
不多说,直接上干货! 这篇我是从整体出发去写的. 牛客网Java刷题知识点之Java 集合框架的构成.集合框架中的迭代器Iterator.集合框架中的集合接口Collection(List和Set). ...
- 牛客网Java刷题知识点之垃圾回收算法过程、哪些内存需要回收、被标记需要清除对象的自我救赎、对象将根据存活的时间被分为:年轻代、年老代(Old Generation)、永久代、垃圾回收器的分类
不多说,直接上干货! 首先,大家要搞清楚,java里的内存是怎么分配的.详细见 牛客网Java刷题知识点之内存的划分(寄存器.本地方法区.方法区.栈内存和堆内存) 哪些内存需要回收 其实,一般是对堆内 ...
- 牛客网Java刷题知识点之HashMap的实现原理、HashMap的存储结构、HashMap在JDK1.6、JDK1.7、JDK1.8之间的差异以及带来的性能影响
不多说,直接上干货! 福利 => 每天都推送 欢迎大家,关注微信扫码并加入我的4个微信公众号: 大数据躺过的坑 Java从入门到架构师 人工智能躺过的坑 ...
- 牛客网Java刷题知识点之UDP协议是否支持HTTP和HTTPS协议?为什么?TCP协议支持吗?
不多说,直接上干货! 福利 => 每天都推送 欢迎大家,关注微信扫码并加入我的4个微信公众号: 大数据躺过的坑 Java从入门到架构师 人工智能躺过的坑 ...
- 牛客网Java刷题知识点之TCP、UDP、TCP和UDP的区别、socket、TCP编程的客户端一般步骤、TCP编程的服务器端一般步骤、UDP编程的客户端一般步骤、UDP编程的服务器端一般步骤
福利 => 每天都推送 欢迎大家,关注微信扫码并加入我的4个微信公众号: 大数据躺过的坑 Java从入门到架构师 人工智能躺过的坑 Java全栈大联盟 ...
- 牛客网Java刷题知识点之Java 集合框架的构成、集合框架中的迭代器Iterator、集合框架中的集合接口Collection(List和Set)、集合框架中的Map集合
不多说,直接上干货! 集合框架中包含了大量集合接口.这些接口的实现类和操作它们的算法. 集合容器因为内部的数据结构不同,有多种具体容器. 不断的向上抽取,就形成了集合框架. Map是一次添加一对元素. ...
随机推荐
- 005jz2440开发板恢复出厂系统
- Linux 文件系统 -- inode 笔记
什么是 inode inode 的定义:Unix 文件系统中的一种数据结构,用来存储文件的元信息数据 文件在硬盘中的存储是以"块"(block)为单位的,常见的块大小是 4k ...
- 共识网络BFT-SMaRt:理论与实践
目录 BFT-SMaRt 简介 分布式计数器服务 功能描述 组网配置 启动节点 常见问题 计数服务 容错服务 BFT-SMaRt 理论 BFT-SMR 典型模式 SMR 状态机复制 VP-Consen ...
- 19.python中os模块的常见用法
常见函数列表 os.sep:取代操作系统特定的路径分隔符 os.name:指示你正在使用的工作平台.比如对于Windows,它是'nt', 而对于Linux/Unix用户,它是'posix'. os. ...
- 【tf.keras】使用手册
目录 0. 简介 1. 安装 1.1 安装 CUDA 和 cuDNN 2. 数据集 2.1 使用 tensorflow_datasets 导入公共数据集 2.2 数据集过大导致内存溢出 2.3 加载 ...
- 加深对于 MVC、MVP、MVVM 的概念理解
目录 MVC 对 MVC 的误解及缘由 MVP MVVM MVC MVC - 维基百科,自由的百科全书 MVC 是软件工程的一种软件架构模式,它不是具体的技术,而是一种代码分层的理念,主要体现了职责分 ...
- Babel+vscode实现APICloud开发中兼容ES6及以上代码
本文出自APICloud官方论坛, 感谢论坛版主 penghuoyan 的分享. 使用APICloud开发时,考虑到兼容问题一直使用ES5开发,时间越久感觉越落后,整理了一个兼容ES6的开发环境, ...
- cogs 2632. [HZOI 2016] 数列操作d
2632. [HZOI 2016] 数列操作d ★★★ 输入文件:segment.in 输出文件:segment.out 简单对比时间限制:3 s 内存限制:512 MB [题目描述] ...
- IDEA使用 磨刀霍霍向代码
工欲善其事,必先利其器 ,当下有数不清的 Java 程序员将石器时代的 Eclipse 替换成了现代化的智能开发工具 InteliJ IDEA ,写代码的小日子过得不亦乐乎(玩笑话,两者各有千秋,看个 ...
- Java入门 - 语言基础 - 04.对象和类
原文地址:http://www.work100.net/training/java-object-class.html 更多教程:光束云 - 免费课程 对象和类 序号 文内章节 视频 1 概述 2 J ...