面试必会
Java基础、计算机网络、操作系统、设计模式等一系列的经常在面试当中出现的知识点。
不撞南天门不回头
work hard, play hard
展开
-
计算机网络——ARP(ARP过程、欺骗、解决办法)
ARP协议过程ARP协议是通过目的IP地址得到其MAC地址的一种网络协议,每台主机都会维护一个ARP缓冲区,缓冲区里有ARP缓存表,表中包含了三个字段(IP地址、IP地址对应的MAC地址、类型(静态、动态)),ARP协议过程为:主机在发包之前查询ARP映射表,如果目的IP地址存在,将对应的MAC地址作为目的MAC地址进行数据包的发送。如果不存在,就会构建一个ARP请求报文段,其中包含目的IP地址,源IP地址,源MAC地址等信息。然后在网段中通过广播包的形式发送(目的MAC地址置为全F),网段中其他原创 2020-09-29 10:29:51 · 2046 阅读 · 0 评论 -
斐波那契避免爆栈
题目来源题目信息思路介绍可以从递归和迭代两个来考虑,传统递归的话容易发生爆栈,所以本题考虑使用迭代的方式。代码展示class Solution { public int fib(int n) { if(n < 0){ return -1; } else if(n == 0){ ...原创 2020-05-03 19:20:24 · 225 阅读 · 0 评论 -
栈模拟队列尾插和头删
题目来源题目信息思路介绍这道题简单难度,关键是联想到栈和队列的区别,栈——先进后出,队列——先进先出。所以要想使用栈来模拟队列,我们可以想到使用两个栈不断地“倒腾”数据:在添加元素到尾部的时候,若是栈一有元素,将全部元素压入栈二,然后再直接将元素压入栈二在删除队列头部元素时,将栈二的元素全部出栈到栈一,此时栈一顶部元素就是队列头部元素代码展示class CQueue{ S...原创 2020-05-03 19:00:00 · 340 阅读 · 0 评论 -
Exception与Error的爱恨纠葛
ErrorError类对象是由 JVM 生成并且抛出,大多数操作与代码编写者所执行的原创 2020-04-23 11:58:14 · 98 阅读 · 0 评论 -
快速排序的精美写法
class QUICKSORT{ public void quickSort(int[] array, int leftBound, int rightBound){ if(leftBound >= rightBound) return; int middle = patition(int[] array, int leftBound, int rightBound); qui...原创 2020-04-14 23:05:09 · 116 阅读 · 0 评论 -
原型模式与深浅拷贝(克隆)
原型模式简述先简单的说一下原型模式,原型模式属于创建型模式,和单例模式属于同一个大类,都是用来生成的对象的,与 java 中的 new 不同,原型模式会把一个对象的属性值拷贝一份复制给另外一个对象。而 new 需要传入需要的参数,不如原型模式方便。示例代码//需要实现 Cloneable 接口class Test implements Cloneable{ public int t...原创 2020-04-14 00:08:47 · 145 阅读 · 0 评论 -
单例模式的五大护法
饿汉式为何叫作饿汉式,意思是很饥饿,那么就会一开始就准备好,以防之后吃不饱,名字由此而来。代码如下class HUNGRYMAN{ //这里实例化方法要设置成私有的,以防外部直接new对象,破坏单例 private HUNGRYMAN(){ } //这里即为一开始就创建好对象,需要调用的时候,直接返回,不需要新创建 private static HUNGRYM...原创 2020-04-13 23:10:36 · 157 阅读 · 0 评论