- 博客(74)
- 收藏
- 关注
原创 2020 社招 JAVA面试题总结
先说些感想:1.找工作是持久战(自己水平缺少不高,所以遇到了很多挫折,找工作也不是很顺利)。不要轻易放弃,尤其是在今年这样不好的大环境下,更有做好持久战的准备。其实有些坎儿,扛过去了人就上了一个台阶儿。就像很多NBA球员,经历过一次总决赛、拿了次总冠军之后,在下赛季往往能打出更好的表现。一是更自信了,二是经历了挫折的洗礼。所以大家在面对挫折实在坚持不下去的时候,告诉自己咬牙再坚持一下。2.适当拔高简历。简历是入场券,是获得面试机会的钥匙。没有面试机会,一切都是扯淡。所以如果你有...
2020-06-23 19:32:29
2626
1
原创 AOF RDB进阶
AOF/RDBRDB是快照文件(被压缩的二进制文件)AOF保存的是redis指令如:set msg “hello”RDB保存的是key valueAOF 保存的是整个指令RDB:redis服务器在启动的时候会检测RDB文件,如果RDB文件存在就会自动导入RDB文件。AOF进行持久化的时候更新频率更高,数据更全,所以如果AOF持久化开启,会优先使用AOF来还原数据。SAVE 命令和BGSAVE指令用于生产RDB文件。SAVE会堵塞redis服务器,BGSAVE通..
2020-06-20 00:26:21
254
1
原创 仅仅反转字母
Reverse an array without affecting special charactersGiven a string, that contains special character together with alphabets (‘a’ to ‘z’ and ‘A’ to ‘Z’), reverse the string in a way that special characters are not affected.Examples:Input: ch...
2020-06-19 18:51:23
237
原创 JDK1.8中 ConcurrentHashMap 中的CAS 和 synchronized是如何使用的
CAS:在判断数组中当前位置为null的时候,使用CAS来把这个新的Node写入数组中对应的位置synchronized :当数组中的指定位置不为空时,通过加锁来添加这个节点进入数组(链表<8)或者是红黑树(链表>=8)详细过程看下面源码 final V putVal(K key, V value, boolean onlyIfAbsent) { if (key == null || value == null) throw new NullPointerEx
2020-06-12 21:25:49
8356
1
原创 2020年6月9日-10日 面试
9号、10号各一个面试,把自己答得不好或者没答上的题整理了一下2020年6月9号一面redis大key的问题HTTPS的流程二面代理模式的思想(感觉自己没说到点上)NIO(我感觉我说的没毛病,但是也确实有点生疏了,复习一下)Lock(同上)sleep和wait的区别(只说了前两点)2020年6月10号垃圾回收器CMS编程题最短路径和:最短路径:https://leetcode-cn.com/problems/minimum-path-sum/...
2020-06-12 00:04:28
262
原创 HTTPS笔记
对称&非对称对称加密: 私钥加密,公钥解密非对称加密: 公钥加密,只能私钥解密如果HTTPS是对称 +非对称服务器端有自己的公钥和私钥步骤:1.客户端向服务器端索要公钥2.客户端拿服务器的公钥对数据num进行加密3.传给服务器用他的私钥解密数据num4.用这个num作为key,进行对称加密进行数据传输。中间人问题如果采用上面这种,会产生中间人问题黑客拦截在服务器和客户端之间,用他自己的公钥和私钥,黑客既可以扮演服务器,也可以扮演...
2020-06-11 17:54:54
217
原创 Java实现布隆过滤器
一、介绍1.描述标识阶段1.定义一个位的数组2.使用多个hash函数计算hash值并取模3.将每个hash函数的取模的结果所对应的标志位置位1过滤阶段1.使用多个hash函数计算要查询数据的hash值并取模2.在位数组中寻找,多个值对应的多个为是否全是1,如果有一个不是1就说明不存在该值2.使用场景解决缓存穿透问题、网页黑名单过滤、垃圾邮件过滤等3.布隆过滤器的误差因为布隆过滤器的自身特点,可能会存在误差。当布隆过滤器的返回值为f...
2020-06-08 12:25:15
702
原创 常见的RuntimeException异常
1.NullPointerException 空指针异常空指针异常非常常见,在业实际务场景中经常出现String ss=null;ss.equals("str");2.ArrayIndexOutOfBoundsException数组索引越界异常ArrayList中只有1个数据,最大索引是0,当获取下标为1的数时,就会ArrayIndexOutOfBoundsExceptionArrayList arrayList = new ArrayList();ar...
2020-06-03 15:59:07
2860
原创 斐波那契
public static long fib(int n){ if (n==0){ return 0; } if (n==1){ return 1; } long fibA=0; long fibB=1; long f...
2018-10-06 11:57:56
371
原创 约瑟夫问题
public class Josephs { static class Node{ Node next; int data; public Node(int data){ this.data=data; } } public static int josephs(Node head,i...
2018-10-06 11:57:13
2132
原创 两数之和
import java.util.HashMap;public class twoSum { public static int[] twoSum(int[] nums, int target) { HashMap<Integer,Integer> m = new HashMap(); int res[] = new int[2]; ...
2018-10-06 11:56:28
156
原创 回文数
public class isPalindrome { public static boolean isPalindrome(int x) { if (x<0 || (x!=0 && x%10==0)) return false; int rev = 0; while (x>rev){ ...
2018-10-06 11:55:28
165
转载 Manacher算法
代码链接:https://www.jianshu.com/p/494d7603cac4解析 :https://blog.csdn.net/zzkksunboy/article/details/72600679代码如下:public class Manacher { public static String longestPalindrome(String string...
2018-10-06 09:30:53
158
原创 BIO与NIO、AIO的区别
参考文章1https://blog.csdn.net/skiof007/article/details/52873421参考文章2http://ifeve.com/java-nio-vs-io/
2018-10-05 15:00:08
198
原创 ArrayList扩容
面试的时候面试官让自己设计一个ArrayList,做的一塌糊涂,在秋招路上继续补强一.ArrayList的属性 private static final long serialVersionUID = 8683452581122892189L; /** * 默认长度 */ private static final int DEFAULT_C...
2018-10-01 15:32:19
169
原创 KMP
KMPpublic class KMP { public static int kmp(String str, String dest,int[] next){//str文本串 dest 模式串 for(int i = 0, j = 0; i < str.length(); i++){ while(j > 0 &...
2018-09-25 21:43:29
122
原创 求n个数字的前K个数或者求中位数
中位数public class median { private boolean bOdd;//是否奇偶数 private int kv;//k值 private double medium; int partition(double a[], int low, int high) { double tmp = a[low]; ...
2018-09-25 21:41:51
382
原创 JDBC
import org.junit.Test;import java.sql.*;/** * Created by Administrator on 2017/7/24. */public class A { // sql :insert del update @Test public void add(){ Connection conn...
2018-09-23 10:51:58
141
转载 MySQL优化
应付面试https://blog.csdn.net/u013087513/article/details/77899412 .自己学习(转)学习MySQL优化原理,这一篇就够了!原文:https://mp.weixin.qq.com/s__biz=MzI4NTA1MDEwNg==&mid=2650763421&idx=1&sn=2515421f09c15...
2018-08-04 15:41:48
133
原创 MYSQL sql语句 复习笔记
1 select * from `employees` order by `hire_date` desc limit 0,1 select * from employees order by hire_date desc limit 2,1limit 0,1 从0开始取1条数据limit 2,1 从2开始取一条数据 也就是第3条数据desc 表order by时降...
2018-08-04 09:36:33
145
转载 MySQL存储引擎中的MyISAM和InnoDB区别详解
个人转载仅供个人学习转载处 :https://blog.csdn.net/lc0817/article/details/52757194 在使用MySQL的过程中对MyISAM和InnoDB这两个概念存在了些疑问,到底两者引擎有何分别一直是存在我心中的疑问。为了解开这个谜题,搜寻了网络,找到了如下信息:MyISAM是MySQL的默认数据库引擎(5.5版之前),由早期的ISAM(In...
2018-07-27 21:15:21
125
转载 计算机网络
TCP/UDPhttps://blog.csdn.net/xiaobangkuaipao/article/details/76793702
2018-07-25 15:21:04
134
原创 复杂链表的复制
复杂链表的复制 我们选取其中的一段代码进行分析 RandomListNode s = new RandomListNode(0); RandomListNode s1 = s; while (pHead != null) { RandomListNode q = pHead.next; pHead.next ...
2018-06-11 22:23:10
153
原创 链表逆置
链表逆置 是一个比较经典的题目了先贴代码 public static ListNode reverse(ListNode head) { if (head == null) { return null; } ListNode pre = null; ListNode next = null; ...
2018-06-11 17:31:25
172
原创 html
一:bgcolor 网页背景色background 网页背景图片二:超链接第一种是内部链接:第二种是外部链接:第三种是书签式链接 :转到此页的指定位置 <a name="under">中的under与<a href = "#under">中的under相对应,必须一样超链接中的name属性:以上面第二行代码为例,当把鼠标放在“腾讯”上时,会出现Tencent提示超链接...
2018-05-30 17:10:41
215
原创 sleep和wait的区别
1.sleep方法继承自Thread类,wait继承自Object类2.sleep方法没有释放对象锁,而wait方法释放了对象锁、 sleep不让出系统资源;wait进入线程等待池等待。3.wait,notify,notifyAll,只能在同步控制方法或者同步方法控制块中使用,sleep可以在任何地方使用synchronize(x){x.notify()//或者wait()}4...
2018-05-23 13:47:58
313
转载 Spring@Autowired注解与自动装配
https://blog.csdn.net/heyutao007/article/details/59815551 配置文件的方法 我们编写spring 框架的代码时候。一直遵循是这样一个规则:所有在spring中注入的bean 都建议定义成私有的域变量。并且要配套写上 get 和 set方法。 Boss 拥有 Office 和 Car 类型的两个属性: 清单 3. Boss.ja...
2018-05-22 13:32:24
126
原创 SpringBoot
SpringBoot Spring 引导器SpringBoot核心功能:1.独立运行Spring项目;SpringBoot可以以jar包的形式独立运行2.内嵌Servlet容器,Spring可选择内嵌Tomcat,Jetty,3.提供starter简化Maven配置Spring提供了一系列的starter pom来简化Maven的依赖加载,当你使用了spring-boot-starter-web...
2018-05-16 20:37:24
154
转载 hibernate一级缓存和二级缓存的区别
缓存是介于应用程序和物理数据源之间,其作用是为了降低应用程序对物理数据源访问的频次,从而提高了应用的运行性能。缓存内的数据是对物理数据源中的数据的复制,应用程序在运行时从缓存读写数据,在特定的时刻或事件会同步缓存和物理数据源的数据。 缓存的介质一般是内存,所以读写速度很快。但如果缓存中存放的数据量非常大时,也会用硬盘作为缓存介质。缓存的实现不仅仅要考虑存储的介质,还要考虑到管理缓存的并发访问和...
2018-05-14 11:11:58
123
原创 AOP
AOP:面向切面编程 实现扩展功能不通过修改源码实现AOP采用横向抽取机制,取代了传统纵向机制;纵向机制通过继承实现AOP底层使用动态代理实现:JDK动态代理,针对有接口的情况。第一种情况:第二种 cglib动态代理:用在没有接口的情况AOP一些重要的概念: ...
2018-05-14 09:04:03
155
转载 连接池
仅供自己学习使用,推荐看原文 转载:https://blog.csdn.net/shenlunshou/article/details/67631643 在一年以前使用的java web开发主要使用的框架是ssh框架。相比于自己编写servlet里面的doget()和dopost()方法来说更加的简介高校。然而在学习的时候大都是一个项目小组共同完成一个项目,这就导致了每次都是本机运行,很少测试...
2018-05-13 11:21:04
190
原创 牛客错题
结果是 构造块 构造块 静态块 构造块开始时JVM加载B.class,对所有的静态成员进行声明,t1 t2被初始化为默认值,为null,又因为t1 t2需要被显式初始化,所以对t1进行显式初始化,初始化代码块→构造函数(没有就是调用默认的构造函数),咦!静态代码块咋不初始化?因为在开始时已经对static部分进行了初始化,虽然只对static变量进行了初始化,但在初始化t1时也不会再执行stat...
2018-05-11 16:45:59
244
转载 JAVA常见面试题之Forward和Redirect的区别
转载于http://www.cnblogs.com/selene/阅读目录一:间接请求转发(Redirect)二:直接请求转发(Forward) 用户向服务器发送了一次HTTP请求,该请求可能会经过多个信息资源处理以后才返回给用户,各个信息资源使用请求转发机制相互转发请求,但是用户是感觉不到请求转发的。根据转发方式的不同,可以区分为直接请求转发(Forward)和间接请求转发(Redirect)...
2018-05-11 11:05:25
212
原创 servlet中doGet()和doPost的区别
推荐:http://winphfar.iteye.com/blog/573167主要有以下2个区别:区别1:doGet接收URL传来的参数,只能小于255的参数;doPost接收FORM传来的参数,可以接受大参数 区别2:doGet将传递的数据按照key value 放在URL的后面,所以不安全。post方式提交数据时是采用的HTTP post机制,是将表单中的字段与值放置在HTTP HEADER...
2018-05-11 10:02:46
639
原创 Java实现socket文件传输
Java实现通过socket文件传输:用到的类:DataInputStream :数据输入流允许应用程序以与机器无关方式从底层输入流中读取基本 Java 数据类型。应用程序可以使用数据输出流写入稍后由数据输入流读取的数据。 DataOutputStream :数据输出流允许应用程序以适当方式将基本 Java 数据类型写入输出流中。然后,应用程序可以使用数据输入流将数据读入。读取文件中的信息:客户端...
2018-05-07 22:02:12
5408
转载 UML类图
本人仅作为笔记使用,请看原文:https://blog.csdn.net/litefish/article/details/51851685这篇写的也很好https://blog.csdn.net/kevin_darkelf/article/details/11371353读代码的时候画下类图对于理清关系非常有意义,我今天尝试着画了下,找了些资料,总结后,自己写了一个,记录关键点,备忘.类图类图是...
2018-05-07 15:08:27
162
原创 java实现简单的socket通信
基础:一些的占用端口号mysql:3306tomcat:8080 http:80 FTP: 21输入流:程序从输入流中读取数据输出流:程序从输出流中写入数据缓冲流:每次I/O发送或接收指定大小的数据量,减少了I/O次数InputStream : 是所有字节输入流的超类,一般使用它的子类:FileInputStream等,它能输出字节流;OutputStream:是所有字节输出流的超类Buffere...
2018-05-05 14:10:00
477
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人