西安尚学堂练习09.17|Java编程笔试面试题

  • 下列哪些类型能被throw语句抛出?
  • A. Error B. Exception C. Throwable D. Object

    【解】注意Error也是可以被throw的,只是通常Error出现程序就中断了,我们并不会去捕获。

    2.编程:给定两个字符串A,B(只包含26个英文字母),输出所有公共的最长子字符串(如果出现重复子串,则输出多次)

    输入包括两行,每行为一个连续字符串(大小写敏感)

    输出包括多行,每行为扫描到的最长公共子串,按照该子串在字符串A(即第一行输入字符串)中出现的先后次序输出

    样例输入:

    abcxyzabcrst

    opqrstabc

    样例输出:

    abc

    abc

    rst

    解答:与最长公共子序列一样,最长公共子串也可以采用动态规划(打表)进行求解。举个例子:X = bab,Y = caba。打表如下:

    西安尚学堂练习09.17|Java编程笔试面试题

    具体打表的方法是:

    第一行、第一列初始化为 0;

    对于其他的格子:

    若对应的两个字符相等,格子的值设为左上角的值加 1。

    若对应的两个字符不相等,直接置 0 。

    3.编程:在一个整数的数组中删除另外一个整数数组中的元素,并保留原数组的次序

    输入包括两行:

    1. 第一行是被删除的整数列表(记为列表A),每个整数之间使用空格分隔
    2. 第二行是需要删除的整数列表(记为列表B),每个整数之间使用空格分隔

    输出只有一行,即列表A中删除列表B元素后的整数列表,输出元素按照在列表A中的次序排列,每个整数之间使用空格分隔

    样例输入:

    1 2 3 4 5

    2 4

    样例输出:

    1 3 5

    解答思路:本题较简单,获取第一行时,用一个list保存;获取第二行时,将每个数从list中删除,最后输出即可。

    原文地址:https://blog.51cto.com/14512197/2438462

    时间: 2024-10-08 18:28:10

    西安尚学堂练习09.17|Java编程笔试面试题的相关文章

    练习09.09|Java编程笔试面试题

    1.如果程序代码为:public class Demo{public static void main (String[ ] args){String a=args[1];System.out.println(a);进行编译后,执行以下命令将得到什么结果?java Demo a1 a2 a3结果:a22.现有一个类定义如下,请回答问题:class Employee{String name;int age;double wage;static int No=0;Employee(String a1

    西安尚学堂练习09.11|Java编程笔试面试题

    功能描述:删除字符串中字符个数最少的字符,最少字符串有多个,最少的要全部删除,然后返回该子字符串.输入:asdasdas输出:asasas解答:import java.util.ArrayList;import java.util.Collections;import java.util.Comparator;import java.util.HashMap;import java.util.List;import java.util.Map;import java.util.Map.Entry

    西安尚学堂练习09.12|Java编程笔试面试题

    一. 简述springMVC的执行流程. 用户发起请求到前端控制器(Controller)前端控制器没有处理业务逻辑的能力,需要找到具体的模型对象处理(Handler),到处理器映射器(HandlerMapping)中查找Handler对象(Model).HandlerMapping返回执行链,包含了2部分内容: ① Handler对象.② 拦截器数组前端处理器通过处理器适配器包装后执行Handler对象.处理业务逻辑.Handler处理完业务逻辑,返回ModelAndView对象,其中view

    西安尚学堂 练习09.03|Java编程笔试面试题

    在2.5亿个整数中找出不重复的整数,内存不足以容纳这2.5亿个整数.方案1:采用2-Bitmap(每个数分配2bit,00表示不存在,01表示出现一次,10表示多次,11无意义)进行,共需内存 内存,还可以接受.然后扫描这2.5亿个整数,查看Bitmap中相对应位,如果是00变01,01变10,10保持不变.所描完事后,查看bitmap,把对应位是01的整数输出即可.方案2:也可采用上题类似的方法,进行划分小文件的方法.然后在小文件中找出不重复的整数,并排序.然后再进行归并,注意去除重复的元素.

    西安尚学堂练习09.10|Java编程笔试面试题

    1.给定a.b两个文件,各存放50亿个url,每个url各占64字节,内存限制是4G,让你找出a.b文件共同的url?方案1:可以估计每个文件安的大小为50G×64=320G,远远大于内存限制的4G.所以不可能将其完全加载到内存中处理.考虑采取分而治之的方法.遍历文件a,对每个url求取 ,然后根据所取得的值将url分别存储到1000个小文件(记为 )中.这样每个小文件的大约为300M.遍历文件b,采取和a相同的方式将url分别存储到1000各小文件(记为 ).这样处理后,所有可能相同的url都

    西安尚学堂练习9.5|Java编程笔试面试题

    1.常用中间件RabbitMQ,kafka等,原理.区别.优缺点. RabbitMQ是一个AMQP实现,传统的messaging queue系统实现,基于Erlang.老牌MQ产品了.AMQP协议更多用在企业系统内,对数据一致性.稳定性和可靠性要求很高的场景,对性能和吞吐量还在其次. Kafka是linkedin开源的MQ系统,主要特点是基于Pull的模式来处理消息消费,追求高吞吐量,一开始的目的就是用于日志收集和传输,0.8开始支持复制,不支持事务,适合产生大量数据的互联网服务的数据收集业务.

    尚学堂练习9.7|Java编程笔试面试题

    1.如果程序代码为:public class Demo{public static void main (String[ ] args){String a=args[1];System.out.println(a);进行编译后,执行以下命令将得到什么结果?java Demo a1 a2 a3结果:a22.现有一个类定义如下,请回答问题:class Employee{String name;int age;double wage;static int No=0;Employee(String a1

    练习08.31|Java编程笔试面试题

    如何确保N个线程可以访问N个资源同时又不导致死锁?使用多线程的时候,一种非常简单的避免死锁的方式就是:指定获取锁的顺序,并强制线程按照指定的顺序获取锁.因此,如果所有的线程都是以同样的顺序加锁和释放锁,就不会出现死锁了.2.如何权衡是使用无序的数组还是有序的数组?有序数组最大的好处在于查找的时间复杂度是O(log n),而无序数组是O(n).有序数组的缺点是插入操作的时间复杂度是O(n),因为值大的元素需要往后移动来给新元素腾位置.相反,无序数组的插入时间复杂度是常量O(1).3.串行(seri

    西安尚学堂 程序员初级、中级和高级的区别在哪里

    前言 低级程序员认为自己与高级程序员的区别, 主要是高级程序员任何功能都能编码实现, 编码速度快, 代码无bug.高级程序员认为他们之所以高级, 在于他们认识到代码 bug 是不可避免的, 有千万种理由可以导致 bug,但他们可以在设计和逻辑上保证(追求)滴水不漏,并用逻辑的百分之百准确性还减少代码 bug.同样是程序员,初级.中级与高级的区别究竟在哪里呢? 初级程序员 初级程序员就是传说中的码农,依靠复制粘贴.比葫芦画瓢的方式完成代码的编写,通常一个方法几百行代码,恨不得一个类将所有的功能都实