![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java面试题
文章平均质量分 74
TinyDolphin
这个作者很懒,什么都没留下…
展开
-
源码浅析 ArrayList、Vector、LinkedList 的区别
从类的定义浅析public class ArrayList<E> extends AbstractList<E> implements List<E>, RandomAccess, Cloneable, java.io.Serializablepublic class Vector<E> extends AbstractList<E> implements List<原创 2017-11-07 13:42:26 · 402 阅读 · 0 评论 -
Servlet 相关问题及其解答
Q:Servlet 和 GCI 的区别? A:Servlet 是基于 Java 编写的,处于服务器进程中,他能够通过多线程方式运行 service() 方法,一个实例可以服务于多个请求,而且一般不会销毁; CGI 对每个请求都产生新的进程,服务完成后销毁,所以效率上低于 Servlet。 Q:Servlet 的生命周期? A:分为 5 个阶段:加载、创建、初始化、处理客户原创 2017-11-22 14:36:33 · 346 阅读 · 0 评论 -
腾讯 2017 暑假实习生编程题(一):给定一个字符串s,你可以从中删除一些字符,使得剩下的串是一个回文串。如何删除才能使得回文串最长呢? 输出需要删除的字符个数。
经典 LCS 算法题:POJ 1458 Common Subsequence 最长公共子序列(LCS)LCS运行轨迹图 import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.InputStreamReader;import java.io.OutputStreamWriter;import ja原创 2017-11-22 17:30:32 · 2486 阅读 · 0 评论 -
腾讯 2017 暑假实习生编程题(二):小Q最近遇到了一个难题:把一个字符串的大写字母放到字符串的后面,各个字符的相对位置不变,且不能申请额外的空间。 你能帮帮小Q吗?
题目链接:腾讯 2017 暑假实习生编程题(二)由《剑指 offer》面试题 4:替换空格,想到的技巧。此处运用了一个小小的技巧:从后往前将大写字符依次插入数组尾部,时间复杂度 O(n) 。import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.InputStreamReader;import jav原创 2017-11-23 10:38:56 · 2343 阅读 · 0 评论 -
多线程相关面试题及其解答
Q:什么是线程?什么是进程?线程和进程有什么区别? A:线程:又称“轻量级进程”,是操作系统能够进行运算调度的最小单位,被包含在进程之中,是进程中的实际运作单位。 进程: 系统进行资源分配和调度的基本单位。 两者之间的区别: 地址空间和其他资源:进程间相互独立,同一进程的各线程间共享,某进程中的线程在其他进程不可见。 通信:进程间通信 IPC,线程间可以直接原创 2017-12-18 10:09:01 · 437 阅读 · 0 评论 -
HashMap 相关面试题及其解答
Q:HashMap 的数据结构? A:哈希表结构(链表散列:数组+链表)实现,结合数组和链表的优点。当链表长度超过 8 时,链表转换为红黑树。 transient Node Q:HashMap 的工作原理? A:HashMap 底层是 hash 数组和单向链表实现,数组中的每个元素都是链表,由 Node 内部类(实现 Map.Entry> hashCode 是定位的,原创 2017-11-21 13:57:32 · 3829 阅读 · 0 评论