- 博客(142)
- 收藏
- 关注
原创 Maven基础知识
Maven基础知识一、Maven基础知识1.概念2.项目构建3.依赖管理4.下载和安装(windows版本)二、Maven手动和自动构建项目,编译,清除,打包1.目录约定2.cmd中切换到项目所在的pom.xml文件所在的目录下执行mvn compile.3.Maven目录分析maven常用命令一、Maven基础知识1.概念一个跨平台的项目管理工具,主要服务于java平台的项目构建,依赖管理,项目信息管理。2.项目构建【清理项目】-【编译项目】-【测试项目】-【生成测试报告】-【打包项目】-【部署
2020-06-07 15:46:06
176
原创 Java面试_多线程打印a1b2
package practice;import java.io.IOException;public class Main { static final Object object = new Object(); public static void main(String[] args) throws InterruptedException { n...
2019-09-27 22:15:04
445
原创 Java面试_克隆
一、基本克隆package za;public class CloneExample { private int a; private int b; @Override public CloneExample clone() throws CloneNotSupportedException{ return (CloneExample)su...
2019-09-25 16:26:30
174
原创 面试_Java源码
Java 源码集合接口Set、List、Map。Future(异步计算模型的返回结果)ArrayList(动态数组实现)CopyOnWriteArrayListVector(动态数组实现)HashMap(数组+链表+1.8之后引用红黑树)LinkedHashMapCurrentHashMap(Segment)HashSetLinkedHashSetHashTable(数组或者链表)集合接口Set...
2019-09-08 20:46:45
481
原创 面试_有赞
有赞一面:1、TCP、UDP区别,应用场景。2、HTTP请求过程,路由算法。3、进程线程区别,谁共享内存谁不共享内存。4、进程的通信方式。5、Sychronized锁升级,升级成轻量级锁/偏向锁,这两种锁是啥?有啥区别?(问到我答不出来为止)6、Sleep和wait区别,说到了notify,问notify是马上唤醒吗【不是】7、HashMap如何扩容(移动元素)、解决Hash冲突、p...
2019-09-07 16:33:22
324
1
原创 Java_面试_手撕读取文件
package 字符字节流;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.File;import java.io.FileReader;import java.io.FileWriter;import java.io.IOException;//字节流的类通常以stream结...
2019-09-04 14:46:05
213
原创 Java_面试基本知识
基本知识一、基本概念0、面向对象和面向过程的区别,介绍一下面向函数编程。1、组合的定义、多态实现机制。2、Java 优点,Java 和C++异同。3、public static void main(String[] args)介绍,如何在main前输出消息。4、Java初始化顺序5、Java作用域6、构造函数7、深复制(clone)、浅复制8、反射机制9、Package10、抽象类、接口11、抽象...
2019-09-02 11:08:41
199
原创 leetcode(16)最长公共子序列
package FAN2;/** * 最长公共子序列: * 给出两个字符串A B,求A与B的最长公共子序列(子序列不要求是连续的)。 * 比如两个串为: * abcicba * abdkscab * ab是两个串的子序列,abc也是,abca也是,其中abca是这两个字符串最长的子序列。 */public class DP07_LCS { public static ...
2019-08-29 15:58:53
867
原创 面试_计算机网络_持续
计算机网络常见问题一、输入网址到网页显示的整个流程二、HTTP和HTTPS区别三、Cookie与Session的区别四、TCP与UDP的区别五、OSI,TCP/IP,五层协议的体系结构,以及各层协议六、TCP三次握手和四次挥手的全过程、三次握手可以改为2次吗?七、 DNS域名系统,简单描述其工作原理。八、描述RARP反向地址解析协议九、 ARP地址解析协议工作原理十、 ICMP、TFTP、HTTP...
2019-08-22 21:08:26
1105
原创 Leetcode(43)大数相乘(字符串相乘)
package com.leetcode.stringmultiply;import java.util.Scanner;public class Main { // 规模只要在这个范围内可以直接计算(整型数值满足) private final static int SIZE = 4; //未经优化,复杂度为o(n^2) public static String multipl...
2019-08-22 10:56:29
1762
原创 设计模式_结构型_适配器
选自菜鸟教程。链接:https://www.runoob.com/design-pattern/adapter-pattern.html我们有一个MediaPlayer接口和一个实现了MediaPlayer接口的实体类AudioPlayer。默认情况下,AudioPlayer可以播放 mp3 格式的音频文件。我们还有另一个接口AdvancedMediaPlayer和实...
2019-08-22 09:27:30
968
原创 笔试_广联达
package Gloton;import java.util.Scanner;//交换两个数组中某个元素使得两个数组元素和相同//第一组测试用例//1 1//2 2//第二组测试用例//2//2 1 3public class GlodonMain2 { public static int[] swap (int[]A ,int[]B){ int[...
2019-08-20 17:05:49
1644
原创 面试_快排(递归、非递归实现)+三数取中优化
package com.basic.order;import java.util.Arrays;import java.util.Stack;//最好、平均是o(nlgn)、最坏都是o(n^2),不稳定public class QuickSort { // 快慢指针法:数组前后各设置两个指针,左指针(从左向右走)遇到第一个比基准值大的数停下 // 右指针(从右向左走)遇到第一个比...
2019-08-20 16:19:11
979
原创 面试_数据库_Redis
Redis一、概述二、数据类型三、数据结构1、字典2、跳跃表四、使用场景1、计数器2、缓存3、查找表4、消息队列5、会话缓存6、分布式锁实现7、其他五、Redis 与 Memcached比较1、数据类型2、数据持久化3、分布式4、数据持久化摘自:CyC公众号https://cyc2018.github.io/CS-Notes/#/notes/Redisid=%e4%b8%89%e3%80%...
2019-08-20 10:44:52
170
原创 Leetcode(150)逆波兰表达式求解
package shangtangkeji;//逆波兰表达式,后缀表达式import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.Stack;//错误用例:2 1 + 3 * //错误用例:2 1 + 0 /public cl...
2019-08-20 09:08:24
187
原创 面试_微服务
微服务一、定义二、特征与界定、优势or缺点小独轻松界定优点缺点三、微服务三维扩展模型四、通信问题五、服务的发现和注册服务的注册客户端注册:(ZooKeeper)第三方注册(独立的服务 Registrar)服务发现客户端发现服务端发现六、部署要求和粒度要求粒度MS部署的解决方案七、微服务的划分八、分布式一致性九、数据隔离问题十、DevOps与微服务架构十一、API 网关十二、配置中心摘自:htt...
2019-08-19 19:34:15
161
原创 Java面试总结_二叉树结点最大距离
package com.binarytree.realize;//最大距离=左子树到根节点最大距离+右子树到根节点最大距离//结点距离指两个结点之间边的个数class NodeNew{ public int data; public NodeNew left=null; public NodeNew right=null; public int leftMaxDistance; ...
2019-08-18 20:33:26
568
原创 Java面试总结_二叉树遍历
package com.binarytree.realize;import java.lang.Thread.State;import java.util.ArrayDeque;import java.util.Stack;//定义一个二叉树class BinaryTreeNode { public int data; public BinaryTreeNode left = ...
2019-08-18 19:12:03
235
原创 面试_顺丰
文章目录一、自我介绍二、Java后台基础2.1 计算机网络2.1.1 数据链路层、网络层、传输层各层的作用。2.2 算法2.2.1 两个栈实现队列。2.2.2 快排(终止条件、时间复杂度)。2.2.3 快排最坏情况的优化。三、课程相关3.1 上学期间印象最深的课程。3.2 实时系统。一、自我介绍个人背景、项目经历、实习经历。二、Java后台基础2.1 计算机网络2.1.1 数据链路层...
2019-08-16 10:36:01
681
原创 面试_数据库总
一、事务1、定义:满足ACID特性的一组操作,可以通过Commit提交一个事务,也可以使用Rollback进行回滚。2、ACID(1)原子性(Atomicity):事务被分成最小不可分割单元,要么全部提交成功,否则全部失败回滚。(2)一致性(Consistency):数据库在事务执行前后保持一致状态。所有事务对同一数据读取结果相同。(3)隔离性(Isolation):一个事...
2019-07-29 23:23:49
136
原创 设计模式_行为型_命令
具体实现package com.desinmode.command;public interface Command { void execute();}package com.desinmode.command;public class Light { public void on() { System.out.println("Light on!"); }...
2019-07-29 15:57:37
119
原创 设计模式_行为型_责任链
具体实现package com.designmode.chainofresponsibility;public enum RequestType { TYPE1,TYPE2}package com.designmode.chainofresponsibility;public abstract class Request { private RequestTy...
2019-07-28 19:59:36
85
原创 设计模式_创建型_生成器
具体实现package com.jianzhioffer.builder;import java.util.Arrays;public class AbstractStringBuilder { protected char[] value;// 存储值 protected int count;// 计数,存储容量 // 初始容量 public AbstractStri...
2019-07-28 11:04:07
129
原创 设计模式_创建型_抽象工厂
具体实现package com.designmode.abstractfactory;public abstract class AbstractProductA { abstract public void introduce();}package com.designmode.abstractfactory;public abstract class Abstra...
2019-07-27 20:43:12
93
原创 设计模式_创建型_工厂方法
具体实现package com.designmode.factorymethod;public abstract interface Product {}package com.designmode.factorymethod;public class ConcreteProduct implements Product{ public ConcreteProduct(...
2019-07-27 20:41:27
86
原创 设计模式_创建型_简单工厂
具体实现package com.designmode.simplefactory;public interface Product {}package com.designmode.simplefactory;public class ConcreteProduct implements Product{ public ConcreteProduct() { S...
2019-07-27 20:39:49
182
原创 设计模式_创建型_原型模式
具体实现部分package com.designmode.prototype;public abstract class Prototype { abstract Prototype myClone();}package com.designmode.prototype;public class ConcretePrototype extends Prototype{...
2019-07-27 20:37:49
107
原创 设计模式_创建型_单例模式
具体实现package com.designmode.singleton;/** * 懒汉式: 1)线程不安全(并发时可能出现多个单例) 2)构造方法为private只能从getInstance去获取单例 * 3)使用static关键字第一次加载getInstance()需要时间 * * @author hexiaoli * */public class Sing...
2019-07-27 20:34:58
132
1
原创 华为机试(20)密码验证合格程序
package com.huaweijishi.passwordcheck;import java.util.Scanner;/** * 题目:密码要求:1.长度超过8位2.包括大小写字母.数字.其它符号,以上四种至少三种 * 3.不能有相同长度超2的子串重复 * 输入描述:一组或多组长度超过2的子符串。每组占一行 * 输出描述:如果符合要求输出:OK,否则输出NG * 实现功能...
2019-07-25 16:01:57
352
原创 面试_设计模式(持续)
二、桥接模式具体实现部分package com.designmode.bridgepattern;//定义内存接口public interface Memory { public void addMemory();}package com.designmode.bridgepattern;//实现4核内存public class Memory4core im...
2019-07-22 17:05:09
187
原创 Leetcode(3)含有重复字符的最长子串的长度
package com.leetcode.lengthoflongestsubstring;/** * 题目:给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。 eg:"abcdabcbb" 结果是4 "bbbbb" 结果是1 思考: * 用一个额外数组存储字符在字符串中出现的位置,大小为256. * 采用滑动窗口的方法,设置窗口头尾两个指针,如果下一个是新字符,则数组向...
2019-07-20 14:34:40
257
原创 Leetcode(2)两数相加
package com.leetcode.addtwonumbers;/** * 题目:给出两个非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照逆序的方式存储的,并且它们的每个节点只能存储一位数字. * 如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。 您可以假设除了数字 0 之外,这两个数都不会以 0开头。 eg:输入:(2 -> 4 * -&...
2019-07-19 11:25:13
75
原创 剑指offer(54)字符流中第一个不重复的字符
import java.util.*;import java.util.stream.Stream;/** * 题目:请实现一个函数用来找出字符流中第一个只出现一次的字符。 * 例如,当从字符流中只读出前两个字符"go"时,第一个只出现一次的字符是"g"。 * 当从该字符流中读出前六个字符“google"时,第一个只出现一次的字符是"l"。 * 如果当前字符流没有存在出现一次的字符,...
2019-07-14 20:11:16
93
原创 剑指offer(49)把字符串转换成整数
/** * 题目:把字符串转换成整数。 eg:+2147483647 1a33 返回:2147483647 0 * * @author hexiaoli */public class Main { public static boolean flag; public static int StrToInt(String str) { flag = false;// 判断输...
2019-07-14 19:57:19
142
原创 剑指offer(46)孩子们的游戏(圆圈中最后剩下的数)
/** * 题目:孩子们的游戏(圆圈中最后剩下的数) 然后,他随机指定一个数m,让编号为0的小朋友开始报数。每次喊到m-1的那个小朋友要出列,直到剩下最后一人。 * 思考: 1)F(N,M)=(F(N-1,M)+M)%N 2)链表 3)数组 * * @author hexiaoli */class Node { Node next = null; int val; pub...
2019-07-14 19:51:58
94
原创 剑指offer(23)二叉搜索树的后序遍历序列
/** * 题目:二叉搜索树的后序遍历序列。 * 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。 * 如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。 * @author hexiaoli */public class Main { public static boolean verifySquenceOfBST(int[] s...
2019-07-14 19:33:25
69
原创 剑指offer(51)构建乘积数组
/** * 题目:构建乘积数组。 * 给定一个数组A[0,1,…,n-1],请构建一个数组B[0,1,…,n-1],其中B中的元素B[i]=A[0]*A[1]*…*A[i-1]*A[i+1]*…*A[n-1]。不能使用除法。 * 思考:剑指offer。 观察公式,B[i]公式中没有A[i]项,直观解法是连乘n-1个数字得到B[i],但该方法时间复杂度为O(n^2)。 * 更高效算法可以...
2019-07-14 19:09:14
86
原创 剑指offer(48)不用加减乘除做加法
/** * 题目:不用加减乘除做加法.写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。 * 思考:剑指offer。 1)直接使用Integer类的sum()方法。 * 2)用异或运算。第一步计算异或和,第二步按位与后左移一位操作 直到没有进位后输出结果,否则一直重复第一第二步 * eg:14(1110)+7(0111) * 第一次:1001,11...
2019-07-14 17:04:27
71
原创 剑指offer(47)求1+2+3+...+n
/** * 题目:求1+2+3+...+n。 * 求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。 * 思考:剑指offer。 1)需利用逻辑与的短路特性实现递归终止。 * 当n==0时,(n>0)&&((sum+=Sum_Solution(n-1))>0)只执行前...
2019-07-14 16:30:43
91
原创 剑指offer书(63) 股票的最大利润
/** * 题目:股票的最大利润(Java实现)。假设把某股票的价格按照时间先后顺序存储在数组中, 请问买卖交易该股票可能获得的利润是多少? * 例如一只股票在某些时间节点的价格为{9, 11, 8, 5,7, 12, 16, 14}。 * 如果我们能在价格为5的时候买入并在价格为16时卖出,则能收获最大的利润11。 思考:剑指offer * 。遍历每一个数字,并保存之前最小的数字,两...
2019-07-14 16:22:27
184
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人