Java最全【天梯赛】 零基础刷题(天梯赛备赛热身赛)(Java题解(1),java微服务面试问题

总结

三个工作日收到了offer,头条面试体验还是很棒的,这次的头条面试好像每面技术都问了我算法,然后就是中间件、MySQL、Redis、Kafka、网络等等。

  • 第一个是算法

关于算法,我觉得最好的是刷题,作死的刷的,多做多练习,加上自己的理解,还是比较容易拿下的。

而且,我貌似是将《算法刷题LeetCode中文版》、《算法的乐趣》大概都过了一遍,尤其是这本

《算法刷题LeetCode中文版》总共有15个章节:编程技巧、线性表、字符串、栈和队列、树、排序、查找、暴力枚举法、广度优先搜索、深度优先搜索、分治法、贪心法、动态规划、图、细节实现题

最新出炉,头条三面技术四面HR,看我如何一步一步攻克面试官?

《算法的乐趣》共有23个章节:

最新出炉,头条三面技术四面HR,看我如何一步一步攻克面试官?

最新出炉,头条三面技术四面HR,看我如何一步一步攻克面试官?

  • 第二个是Redis、MySQL、kafka(给大家看下我都有哪些复习笔记)

基本上都是面试真题解析、笔记和学习大纲图,感觉复习也就需要这些吧(个人意见)

最新出炉,头条三面技术四面HR,看我如何一步一步攻克面试官?

  • 第三个是网络(给大家看一本我之前得到的《JAVA核心知识整理》包括30个章节分类,这本283页的JAVA核心知识整理还是很不错的,一次性总结了30个分享的大知识点)

最新出炉,头条三面技术四面HR,看我如何一步一步攻克面试官?

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

输入

单组输入。 输入一个可能存在单个字母错误的单词。

输出

输出与输入对应的正确单词。

样例输入


hoose



样例输出


horse



Java题解


有时候为了使代码更简洁很习惯把问题复杂化,其实多用几个判断条件就能区分‘cat’和’pig’了






import java.util.Scanner;



public class Main {



	public static void main(String[] args) {

		// TODO Auto-generated method stub

		String string;

		Scanner scanner=new Scanner(System.in);

		string=scanner.nextLine();

		if(string.length()==5) {

			System.out.println("horse");

		}else {

			if((string.charAt(0)!='c'&&string.charAt(1)=='a'&&string.charAt(2)=='t')||

			(string.charAt(0)=='c'&&string.charAt(1)!='a'&&string.charAt(2)=='t')||

			(string.charAt(0)=='c'&&string.charAt(1)=='a'&&string.charAt(2)!='t')||

			(string.charAt(0)=='c'&&string.charAt(1)=='a'&&string.charAt(2)=='t')){

				System.out.println("cat");

			}else {

				System.out.println("pig");

			}

		}

		scanner.close();

	}



}





😉问题 C: 十六进制

===============================================================================

题目描述

小米同学最近在学习进制转换。众所周知,在表示十六进制数时,除了0-9这九个阿拉伯数字外,还引入了“A”、“B”、“C”、“D”、“E”和“F”这六个英文字母(不区分大小写)。

现在给你一个十进制正整数,请问在将其转换为十六进制之后,对应的十六进制表示中有多少位是字母?

输入

单组输入。 输入一个十进制正整数N(N<=10^6)。

输出

输出将N转换成十六进制数字后所包含的字母位的数量,如果没有字母位则输出0。

样例输入


20



样例输出


0



Java题解


对数制转换熟悉就很easy了,除此之外Java自身还有数制转换的方法




import java.util.Scanner;



public class Main{



	public static void main(String[] args) {

		// TODO Auto-generated method stub

		int n,ans=0;

		Scanner scanner=new Scanner(System.in);

		n=scanner.nextInt();

		while(n!=0) {

			if(n%16>=10) {

				ans++;

			}

			n=n/16;

		}

		System.out.println(ans);

		scanner.close();

	}



}










import java.util.Scanner;



public class Main {



	public static void main(String[] args) {

		int n,ans=0;

		Scanner scanner=new Scanner(System.in);

		n=scanner.nextInt();

		String string=Integer.toHexString(n);

		//System.out.println(string);

		for(int i=0;i<string.length();i++) {

			if(!(string.charAt(i)>='0'&&string.charAt(i)<='9')) {

				ans++;

			}

		}

		System.out.println(ans);

		scanner.close();

	}



}





😊问题 D: 平行四边形

================================================================================

题目描述

Kimi想用“_”号构成一个平行四边形并在屏幕上输出。 当输入一个大于等于2的正整数N时,屏幕上将显示一个由N_N个“*”组成的平行四边形。

例如:输入3,输出如下平行四边形。


  ***

 ***

***



输入

输入一个正整数N,1<N<=100。

输出

输出一个N行,每行N个“*”组成的平行四边形。

样例输入


3



样例输出


  ***

 ***

***



Java题解







import java.util.Scanner;



public class Main {



	public static void main(String[] args) {

		int n;

		Scanner scanner=new Scanner(System.in);

		n=scanner.nextInt();

		for(int i=n;i>0;i--) {

			for(int j=i-1;j>0;j--) {

				System.out.print(" ");

			}

			for(int k=0;k<n;k++) {

				System.out.print("*");

			}

			System.out.println();

		}

		scanner.close();



	}



}





😏问题 E: 临时换人

===============================================================================

题目描述

因为某些原因,Jack和Rose没有办法参加毕业演出,他们两个的工作任务都将由劳模Tom来代替。

现在需要更新演职人员名单,将所有的Jack和Rose替换成Tom。 请你编写一段程序实现人员替换功能。

输入

单组输入。 输入一个字符串(可能有空格,字符串长度<=1e5),包含若干Jack和Rose。

输出

输出替换之后的字符串。

样例输入


Cameraman: Jack, Lighting engineer: Rose.



样例输出


Cameraman: Tom, Lighting engineer: Tom.



Java


呵呵,这一题我又知道一个Java自带的方法,两行解决了




import java.util.Scanner;



public class Main {



	public static void main(String[] args) {

		String s;

		Scanner scanner=new Scanner(System.in);

		s=scanner.nextLine();

		s=s.replaceAll("Jack", "Tom");

		s=s.replaceAll("Rose", "Tom");

		System.out.println(s);

		scanner.close();

	}



}





😭问题 F: 第n个数

===============================================================================

题目描述

自从学了素数以后,明明喜欢上了数字2、3和5。当然,如果一个数字里面只出现2、3和5这三个数字,他也一样喜欢,例如222、2355、223355。

现在他希望你能够帮他编写一个程序,快速计算出由2、3、5这三个数字组成的由小到大的第n个数,当然也包括2、3和5。

写在最后

还有一份JAVA核心知识点整理(PDF):JVM,JAVA集合,JAVA多线程并发,JAVA基础,Spring原理,微服务,Netty与RPC,网络,日志,Zookeeper,Kafka,RabbitMQ,Hbase,MongoDB,Cassandra,设计模式,负载均衡,数据库,一致性哈希,JAVA算法,数据结构,加密算法,分布式缓存,Hadoop,Spark,Storm,YARN,机器学习,云计算…

image

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

个数字里面只出现2、3和5这三个数字,他也一样喜欢,例如222、2355、223355。

现在他希望你能够帮他编写一个程序,快速计算出由2、3、5这三个数字组成的由小到大的第n个数,当然也包括2、3和5。

写在最后

还有一份JAVA核心知识点整理(PDF):JVM,JAVA集合,JAVA多线程并发,JAVA基础,Spring原理,微服务,Netty与RPC,网络,日志,Zookeeper,Kafka,RabbitMQ,Hbase,MongoDB,Cassandra,设计模式,负载均衡,数据库,一致性哈希,JAVA算法,数据结构,加密算法,分布式缓存,Hadoop,Spark,Storm,YARN,机器学习,云计算…

[外链图片转存中…(img-J8xZVILe-1715332300418)]

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

  • 7
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值