自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

mi4o

计算机相关

  • 博客(104)
  • 问答 (5)
  • 收藏
  • 关注

原创 2020本科校招-从小白到拿到30k offer的学习经历

内容同步更新到github:https://github.com/mio4/interview前言本文是个人2019年年度总结。先介绍下博主背景:计算机本科大四,刚进大三还是没有实习、没有项目经历的小白,经过一年时间的刻意练习[deliberate practice],最后在校招中拿到了大厂offer,标题中30k的offer已经拒掉了,有了更好的去处,只是用来举例。0x0 前期调研以下经验根据个人的经验来谈,有一定的局限性,仅供参考。1. 为什么不选择算法计算机专业的就业方向很多,对

2020-05-31 16:30:44 1229 1

原创 LeetCode 494. Target Sum

#pragma once#include <vector>#include <string>using namespace std;class Solution {private: int res = 0;public: int findTargetSumWays(vector<int>& nums, int S) { recurs

2019-03-07 23:17:24 183

原创 LeetCode 121. Best Time to Buy and Sell Stock

买卖股票的最佳时间只能进行一次买入卖出操作,所以要找到整个区间内的最大差值暴力搜索时间复杂度是O(n^2),使用一个标记值来判定是否满足条件,时间复杂度可以优化到O(n)package DP.No121;class Solution { public int maxProfit(int[] prices) { int maxPro = 0; int...

2019-02-09 17:54:26 227

原创 LeetCode 122. Best Time to Buy and Sell Stock II

可以进行多次买卖,要保证每一次都获得了小范围内的最大利润。找到所有的连续上升区间,在区间内进行最低价购入,最高价抛售的transaction即可。package DP.No122;class Solution { public static int maxProfit(int[] prices) { int maxPro = 0; if(price...

2019-02-09 17:35:38 178

原创 LeetCode 78. Subsets

如何实现ArrayList的拷贝:使用ArrayList.addAll()方法将一个list的内容全部复制过来使用不断扩充的方式从[]空数组生成新的数组(1)首先会生成[1],此时加上原来的有[]和[1](2)然后会生成[2],[1,2],此时加上原来的有[]和[1],[2],[1,2](3)然后会生成[3],[1,3],[2,3],[1,2,3],此时加上原来的有[]和[1],[2],...

2019-01-13 22:03:41 140

原创 LeetCode 344. Reverse String

class Solution { public String reverseString(String s) { StringBuffer sb = new StringBuffer(); for(int i=s.length()-1; i >= 0; i--) sb.append(s.charAt(i)); ...

2019-01-13 21:40:46 114

原创 LeetCode 611. Valid Triangle Number

如果任意两边之和大于第三边,那么是个合法的三角形所以联想到判断合法IP地址那道题,既然是固定选择3个数,那么可以Brute Force排序之后将所有的情况判定出来package array.No611;import java.util.Arrays;class Solution { public static int triangleNumber(int[] nums) {...

2019-01-13 21:01:34 155

原创 LeetCode 88. Merge Sorted Array

这道题的解法比较巧妙最开始的想法是从前往后开始合并数组,不过发现这样需要不断往后移动数组,时间开销比较大标准题解是从两个数组的最后一个元素开始比较,将大的放在第一个数组后面空闲的位置[为什么?因为合并之后的数组的大小是确定的,并且两个数组已经是排序好的]。边界条件:在第一个数组中所有元素都放到正确位置之后,第二个数组还有元素没有放置到第一个数组从末尾开始合并的思路很巧妙,这个和Longe...

2019-01-13 17:32:30 174

原创 LeetCode 236. Lowest Common Ancestor of a Binary Tree

这道题和上一道求解最低公共祖先的不同在于是一般的二叉树,只能遍历节点来获取信息通过返回节点是否为空判定子树中是否有pq节点三种情况p和q分别在两颗子树中:那么当前节点就是最低公共祖先p和q都在左子树:将问题转换为在当前节点的左子树找p和q的最低公共祖先p和q都在右子树:将问题转换为在当前节点的右子树找p和q的最低公共祖先package tree.No236;class ...

2019-01-12 19:38:04 193

原创 LeetCode 235. Lowest Common Ancestor of a Binary Search Tree

因为是二叉搜索树,所以可以根据值的大小判定是属于根节点的左子树还是右子树。如果都是在左子树部分,那么最低公共祖先一定属于当前节点的左子树;如果都是在右子树部分,那么最低公共祖先一定属于当前节点的右子树;否则当前节点一定是最低公共祖先(为什么?)因为这种情况下无论假设最低公共祖先是属于左子树还是右子树,最低公共祖先一定不是属于另外一棵树的节点的祖先,假设证伪。package tree.N...

2019-01-12 19:13:37 136

原创 LeetCode 905. Sort Array By Parity

class Solution { public int[] sortArrayByParity(int[] A) { int[] res = new int[A.length]; int index = 0; for(int i=0; i < A.length; i++){ if(A[i]%2 == 0) ...

2019-01-12 18:47:43 141

原创 LeetCode 160. Intersection of Two Linked Lists

最开始想到的O(n^2)只管解法:只需要固定一条链表,移动另一个指针,判定指针是否属于固定链表的后继节点即可package linkedlist.No160;class ListNode { int val; ListNode next; ListNode(int x) { val = x; next = null; ...

2019-01-12 18:21:14 148

原创 LeetCode 199. Binary Tree Right Side View

求解二叉树的右视图其实就是每一层最右边的节点,那么如果能够得到每一层所有节点的有序集合,就很容易得到结果那么首先联想到了做过的二叉树按层次遍历,得到层次遍历集合之后,取每一层的最后一个元素package tree.No199;import java.util.ArrayList;import java.util.List;class TreeNode { i...

2019-01-12 11:01:18 157

原创 2017校招-网易 饥饿的小易

饥饿的小易挺有意思的一道数学题,最开始从4x+3和8x+7和1,000,000,007入手观察了半天,最后发现和1,000,000,007没有半点关系,只需要针对4x+3和8x+7的两条路径选择合并成同一条即可对于4x+3和8x+7,都是从2x+1调用自身2遍、3遍来的,所以将问题转换成x0变成2x0+1之后是否满足条件即可注意每次要取模更新x0,否则溢出是早晚的事情import ja...

2019-01-03 17:20:44 200

原创 2017校招-网易 统计回文

解救小易import java.util.Scanner;public class Main{ public static void main(String[] args){ Scanner in = new Scanner(System.in); int n = in.nextInt(); int[][] traps = new int...

2019-01-03 16:43:54 146

原创 2017校招-网易 统计回文

统计回文需要注意的是插入位置i的取值范围要包含lenA(即插入到A字符串最后面的情况)import java.util.Scanner;public class Main{ public static void main(String[] args){ Scanner in = new Scanner(System.in); String A = in...

2019-01-03 16:26:50 157

原创 2017校招-网易 小易喜欢的单词

小易喜欢的单词匹配字符串先没有想到好的方法,不过s长度被限制在100以内,那么嵌套for循环(Brute Force)虽然丑陋,应该也能过OJpackage Interview2017.wangyi.No5;/** * https://www.nowcoder.com/practice/ca7b8af83e2f4ec1af2f23d6733223b5?tpId=85&tqId=...

2019-01-03 15:18:39 213

原创 2017校招-网易 Fibonacci数列

Fibonacci数列难度:easypackage Interview2017.wangyi.No3;import java.util.Scanner;public class Main{ public static void main(String[] args){ Scanner in = new Scanner(System.in); int ...

2019-01-03 12:27:55 180

原创 2017校招-网易有道 构造队列

题目:https://www.nowcoder.com/practice/657d09e2b3704574814089ba8566d98d?tpId=85&tqId=29849&tPage=1&rp=1&ru=/ta/2017test&qru=/ta/2017test/question-ranking这个题目和LeetCode上的某道题比较类似,不过记...

2019-01-03 11:28:03 199

原创 MyBatis Excepton : PersistenceException

Exception in thread "main" org.apache.ibatis.exceptions.PersistenceException: ### Error building SqlSession.### The error may exist in com/mio4/mapper/StudentMapper.xml### The error occurred while ...

2018-11-27 09:57:10 408

原创 Spring(2):注解

(一) IoC-注解入门使用注解来替代配置文件,能在一定程度上简化代码使用步骤:1.开启注解扫描 2.对类做标记1. 配置文件配置applicationContext.xml<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"...

2018-11-13 22:33:11 144

原创 Spring(1):入门

文章目录(一)Head First(1)什么是Spring(2)IoC(3)工程步骤(4)applicationContext.xml(1)bean标签(5)依赖注入(1)属性注入(2)集合注入(3)Util.properties注入关于业务层的Spring,IoC、DI、AOP的核心概念需要掌握(一)Head First(1)什么是SpringSpring是一个轻量级开源框架优点...

2018-10-29 21:07:02 130

原创 Hibernate(3):事务&查询

文章目录(一)事务(1)悲观锁(2)乐观锁(3)绑定当前线程的session(二)查询(1)HQL(2)Criteria(三)1099占用解决方案既然Hibernate要和数据库交互,那么事务是必须要掌握的部分(一)事务为什么要锁:在并发访问的时候,不使用锁会导致部分数据并不能保存到数据库(1)悲观锁悲观锁:数据库提供被一个事务操作的一条数据会被加锁,操作完成之后释放锁缺...

2018-10-25 18:19:13 377

原创 Hibernate(2):持久化

文章目录(一)持久化(1)持久化类(2)主键(3)MySQL方言(4)主键生成策略(5)持久化对象状态(6)持久化对象状态转换☆(1)持久态(二)缓存(1)Session一级缓存(2)SessionFactory二级缓存(一)持久化(1)持久化类持久化类:JavaBean+对应映射的配置文件(xxx.hbm.xml)规范提供一个无参的构造方法属性提供get和set方法基本数据类型...

2018-10-24 21:52:19 107

原创 Hibernate(1):入门

layout: posttitle: “Hibernate(1):”categories: JavaWebtags: Hibernateauthor: mio4content{:toc}文章目录layout: posttitle: "Hibernate(1):"categories: JavaWebtags: Hibernateauthor: mio4(一)Hi...

2018-10-23 19:48:57 130

原创 SAXParseException 元素内容必须由格式正确的字符数据或标记组成 : 解决办法

报错信息:19-Oct-2018 11:52:33.598 严重 [RMI TCP Connection(3)-127.0.0.1] org.apache.tomcat.util.digester.Digester.fatalError Parse Fatal Error at line 49 column 6: 元素内容必须由格式正确的字符数据或标记组成。 org.xml.sax.SAX...

2018-10-19 11:57:37 3660

原创 JavaWeb基础(12):代理☆

文章目录(一)(1)静态代理(1)Demo(2)动态代理(1)Demo(一)(1)静态代理在编译时已经将接口、被代理类、代理类确定下来的代理方式代理类持有被代理类的实例代理类和被代理类implements相同接口代理的好处可以对原类的方法进行加强(1)Demo接口:package Proxy;/** * Person接口 */public inte...

2018-10-16 20:12:18 125

原创 JavaWeb基础(11):注解

文章目录(一)注解(1)注解(2)元注解(3)使用注解(一)注解(1)注解注解(Annotation)作用编译检查替代配置文件(比如web.xml)定义注解Java预留的注解@Override 申明方法是继承自父类(编译时会检查)@SuppressWarnings(“参数”) 抑制警告 参数比如:unused@Deprecated 声明方法过时,不赞成使用自...

2018-10-16 20:11:19 115

原创 JavaWeb基础(10):listener&filter

文章目录(一)listener(1)监听对象(2)监听属性(3)监听JavaBean(二)filter(1)生命周期(2)FilterChain(3)url-pattern配置(4)应用JavaWeb三大组件:Servlet 、Filter、 Listener(一)listener(1)监听对象Listener(监听器):一个接口作用:监听对象比如:ServletContext...

2018-10-16 20:10:52 125

原创 前端基础(7):AJAX

文章目录(一)AJAX(1)简介(2)使用步骤(3)AJAX-API(4)jQuery下的AJAX(二)AJAX检查用户名占用(三)模拟搜索引擎(一)AJAX(1)简介AJAX(Asynchronous Javascript And XML)异步Javascript和XML功能:在不更新页面的情况下,对网页的局部信息进行更新比如:在注册用户时,遇到刚输入完成用户名,就提醒这个用户名...

2018-10-14 23:54:32 152

原创 JavaWeb基础(9):MVC&事务

文章目录(一)MVC(1)MVC(2)Javabean+JSP(3)JavaEE三层架构(二)事务(1)数据库事务(2)Java事务(3)事务(一)MVC(1)MVCMVC模型Module 主要是封装数据,封装对数据的访问(User、DAO)View 主要作用是展示数据(JSP)Control 接受请求找到对应的JavaBean处理业务逻辑(Servlet)(2)Javab...

2018-10-14 23:52:31 161

原创 【LeetCode题解】89. Gray Code (Java)

文章目录(一)89. Gray Code(一)89. Gray CodeThe gray code is a binary numeral system where two successive values differ in only one bit.Given a non-negative integer n representing the total number of bits ...

2018-10-12 23:23:09 336

原创 【LeetCode题解】72. Edit Distance (Java)

文章目录(一)72. Edit Distance(一)72. Edit DistanceGiven two words word1 and word2, find the minimum number of operations required to convert word1 to word2.You have the following 3 operations permitted o...

2018-10-12 22:20:42 225

原创 【LeetCode题解】64. Minimum Path Sum(Java)

文章目录(一) Minimum Path Sum(一) Minimum Path SumGiven a m x n grid filled with non-negative numbers, find a path from top left to bottom right which minimizes the sum of all numbers along its path.Note...

2018-10-12 21:27:55 251

原创 【LeetCode题解】 70. Climbing Stairs(Java)

文章目录(一)70. Climbing Stairs(一)70. Climbing StairsYou are climbing a stair case. It takes n steps to reach to the top.Each time you can either climb 1 or 2 steps. In how many distinct ways can you cl...

2018-10-11 01:23:57 195

原创 JavaWeb开发:java.lang.ClassNotFoundException: com.mysql.jdbc.Driver

报错信息: java.lang.ClassNotFoundException: com.mysql.jdbc.Driver at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1309) at org.apache.catalina.loader.WebappCl...

2018-10-11 00:50:59 403

原创 JavaWeb基础(8):JavaBean

文章目录(一)JavaBean(1)JavaBean规范(2)JSP中获取JavaBean属性(一)JavaBean(1)JavaBean规范JavaBean需要遵守的修饰为public class提供私有的字段private String xxx属性(bean属性)提供对于私有字段的公有方法方法getXXX和setXXX提供一个无参的构造器一般会implements Se...

2018-10-04 10:07:12 194

原创 JavaWeb基础(6):Cookie & Session

文章目录(一)会话(1)数据存储(二)Cookie(1)定义(2)用法(3)历史记录(三)Session(1)生命周期(2)购物车功能本次练习的记录历史记录/购物车代码:https://github.com/mio4/Learn-Java/tree/master/Head First Java Web/BasicDemo7(一)会话(1)数据存储HTTP协议是一种无状态协议用户在...

2018-10-02 17:05:01 136

原创 JavaWeb基础(5):Request&Response

layout: posttitle: “JavaWeb基础(5):Request&Response”categories: JavaWebtags: JavaWebauthor: mio4content{:toc}文章目录layout: posttitle: "JavaWeb基础(5):Request&Response"categories: Java...

2018-10-01 23:17:52 216

原创 JavaWeb基础(4):实现简单的注册登录模块

文章目录(一)项目框架(1)技术分析(1)项目结构(二)具体实现(1)前端(2)后端(0)表示图(1)Servlet(2)UserService(3)UserDao(4)MySQL(三)效果(1)主页(2)登录界面(3)注册界面(4)不足之处(一)项目框架练习Servlet使用时,实现一个简单的用户注册登录模块(不考虑SQL注入等问题)源码地址:https://github.com/mio...

2018-10-01 23:04:09 8044 6

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除