2021年小米校招java编程题
2021年小米校招java笔试编程题(AC)
有幸成为今年小米校招二十万分母的一员,小米编程题不算难基本都是板子题。之前力扣周赛也能看出来,一群大佬十几分钟AK。
这次笔试分为单选、多选和两道编程题。个人感觉多选难一点。
废话少说,给题,刚刚写完还热乎的。
求最长公共子序列的长度
题目描述:
给定两个字符串str1和str2,输出两个字符串的最长公共子序列的长度。如果最长公共子序列为空,则返回"0"。目前给出的数据,仅仅会存在一个最长的公共子序列
- 样例输入:
- 1A2C3D4E56
- A1B2345C6D
- 样例输出 6
public class Main{public static void main(String []args){Scanner in = new Scanner(System.in);//基本的dp板子题 思路就不讲了,详情csdn:dpString a = in.nextLine();String b = in.nextLine();//这里位置换了一下,是因为我画图画反了。。int len1 = b.length();int len2 = a.length();int [][]dp = new int[len1][len2];dp[0][0]=a.charAt(0)==b.charAt(0)?1:0;//存初始for(int i=1;i<len1;i++){ //初始化第一列dp[i][0] = a.charAt(0)==b.charAt(i)?dp[i-1][0]+1:dp[i-1][0];if(dp[i][0]>1) dp[i][0]=1;}for(int j=1;j<len2;j++){//初始化第一行dp[0][j] = a.charAt(j)==b.charAt(0)?dp[0][j-1]+1:dp[0][j-1];if(dp[0][j]>1) dp[0][j]=1;}for(int i=1;i<len1;i++){for(int j=1;j<len2;j++){//经典转换方程dp[i][j]= a.charAt(j)==b.charAt(i)?Math.max(dp[i][j-1],dp[i-1][j])+1:Math.max(dp[i][j-1],dp[i-1][j]);}}System.out.println(dp[len1-1][len2-1]);}
}
红白蓝彩条排序
题目描述:
给你一个仅有红,白,蓝三种颜色组成的10个条块序列,现需要你将这些条块按照红,白,蓝的顺序排好,可用1代表红色,2代表白色,3代表蓝色,要求时间复杂度为O(n)。例如,给定彩色条块序列为:
{蓝、白、红、白、蓝、红、白、白、红、蓝}
则要求排列结果为:
{红、红、红、白、白、白、白、蓝、蓝、蓝}
输入描述
{蓝、白、红、白、蓝、红、白、白、红、蓝}
输出描述
{红、红、红、白、白、白、白、蓝、蓝、蓝}
样例输入
3 2 1 2 3 1 2 2 1 3
样例输出
1 1 1 2 2 2 2 3 3 3
import java.util.Scanner;
public class Main{public static void main(String []args){Scanner in = new Scanner(System.in);int []num = new int[15];//用桶排序思路来统计 达到O(n) 效率for(int i=0;i<10;i++){int n = in.nextInt();num[n]++;}//这里虽然是两层循坏 但时间复杂度还是O(n)。//因为第二层是n的一部分而不是n,应该是第二层乘第一层的3才算n。(应该大概也行)for(int i=1;i<=3;i++){for(int j=0;j<num[i];j++){System.out.print(i+" ");}}}
}
2021年小米校招java编程题相关推荐
- java校招面试题_java校招面试编程题及答案.docx
java校招面试编程题及答案 java校招面试编程题及答案 Java集合框架为Java编程语言的基础,也是Java面试中很重要的一个知识点.这里,我列出了一些关于Java集合的重要问题和答案. 集合框 ...
- 魔法币 java_网易2018校招笔试编程题-魔法币 java实现
魔法币 原题 小易准备去魔法王国采购魔法神器,购买魔法神器需要使用魔法币,但是小易现在一枚魔法币都没有,但是小易有两台魔法机器可以通过投入x(x可以为0)个魔法币产生更多的魔法币. 魔法机器1:如果投 ...
- 背包问题 2020年小米校招JAVA岗笔试第二题
对于背包问题:例如小偷东西问题 如上图 小偷最多可以带走重量位20.要尽可能带走多的商品. 所以应该设置数组capacity[20+1], 商品itmes [5+1] 其中,capacity[0]=0 ...
- java经典50道_50道经典的JAVA编程题(41-45)
50道经典的JAVA编程题(41-45),苦逼的程序猿,晚上睡不着了编程吧~今天坚持做10道题!发现编程能是我快乐...O(∩_∩)O哈哈~能平静我烦乱的心,剩下5道题留到考试完了再做吧!该睡觉了.. ...
- java 编程题_最新JAVA编程题全集(50题及答案)92862
<最新JAVA编程题全集(50题及答案)92862>由会员分享,可在线阅读,更多相关<最新JAVA编程题全集(50题及答案)92862(32页珍藏版)>请在人人文库网上搜索. ...
- 质量不同的球java编程_荐非常经典的java编程题全集-共50题(1-10)...
非常经典的java编程题 程序1:斐波那契数列问题 题目概述: 古典问题: 有一对兔子,从出生第三个月起每月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多 ...
- java语言编程三角形图形_编程题:编写程序输入三角形的3条边长,计算并输出... 求助一道JAVA编程题:编写一个类似记事本的图形用......
导航:网站首页 > 编程题:编写程序输入三角形的3条边长,计算并输出... 求助一道JAVA编程题:编写一个类似记事本的图形用... 编程题:编写程序输入三角形的3条边长,计算并输出... 求助 ...
- java类求圆的面积周长_java编程 1. 设计一个求圆的面积和周长的类,要求:1计算当半径r,JAVA编程题。编写一个应用程序计算圆的周长和面积,设圆的半...
问题标题 java编程 1. 设计一个求圆的面积和周长的类,要求:1计算当半径r,JAVA编程题.编写一个应用程序计算圆的周长和面积,设圆的半 2019-5-23来自ip:15.196.194.53的 ...
- 拼多多2020校招部分编程题
文章目录 拼多多2020校招部分编程题 多多的排列函数 canci 拼多多2020校招部分编程题 #include <iostream> using namespace std; int ...
最新文章
- python电商项目源码_Python Django(WEB电商项目构建)
- php 检测密码,php检测密码强度
- Linux中wait()函数及waitpid()函数
- 微信小程序 WXBizDataCrypt 解密 报错
- python操作word文档中的图片_Python操作word文档插入图片和表格的实例演示
- 55个高质量的Magento主题,助你构建电子商务站点
- c语言对分求解方程,用C语言对一元二次方程求解
- 怎么画人像_画动画+耍杂技怎么玩?日本小哥串烧后居然爆火网络
- 有向图(3.基于十字链表的c++实现)
- 转:Windows Azure Platform体验(3):Azure AppFabric
- 大数据可视化-Tableau
- 完美解决Sudo doesn‘t work: “/etc/sudoers is owned by uid 1000, should be 0”
- 13万人12306信息泄露 小伙挨个发邮件通知
- 计算机主机电源接线,七个步骤教你主机电源如何接线
- Ubuntu下U盘变成只读解决方法
- OCX 添加方法和事件
- vs2017开发ActiveX(主讲OCX)(八)、添加常用方法
- c语言字符串中字母降序数字升序,将字符串以ASCII码降序排列
- 托科技的福,学不好外语就别学了!| 技术前沿洞察
- C++算法 N阶递减三角形