面试知识汇总
每天一个面试小知识点
以码平川
这个作者很懒,什么都没留下…
展开
-
# 数据库知识复习汇总
数据库知识复习汇总数据库:不光要会写sql,几大范式定义概念搞懂。数据库事务的ACID总能扯明白吧?隔离层级分别保障的粒度,和依然存在的问题你得知晓吧?更重要的是,你得知道sql得优化和套路。查询优化策略,db层级的优化考虑你是大学生,不太会问题。这年月也不想要求你oracle了,但是主流的MYSQL的存储引擎之间的区别,你得知道吧。索引你得知道吧,这个是个比较广泛的话题噢,索引原理,索引数据结构与算法,为什么会采用这些索引?索引优缺点。都起码知晓下吧。数据库事务的实现方式你能知道一些吗?二阶段提交、三阶原创 2020-09-20 19:31:39 · 122 阅读 · 0 评论 -
在校生如何面向面试地学习Java
在校生如何面向面试地学习Java最近我在博客园里,看到不少在校的同学在学java,而且,在我最近举办的一次直播活动中,也有不少在校生同学来提问,java该怎么学。对于那些已经工作的同学,哪怕才工作不久,毕竟也能从项目实践里总结和探索java的学习途径和相关方法。但在校生同学由于没机会接触实际项目,在学习内容、进阶途径和学成标准这些方面都是两眼一抹黑,而大学里的内容可能偏重于理论,讲述的技术往往也和软件公司里常用的技术不匹配。这就导致了很多上心的在校生,虽然很努力,但到毕业时,才发现自己起早贪黑转载 2020-09-08 15:10:31 · 170 阅读 · 0 评论 -
动态规划---面试复习
文章目录1.动态规划解题思路状态最优子结构无后效性转移方程分类讨论,细心枚举2.线性DP概述分类LISLCS数字三角形背包特长特长DP状态沿着各个维度线性增长3.基础模型300.最长上升子序列LIS1143.最长公共子序列LCS120.三角形的最小路径和4.习题练习198.打家劫舍354.俄罗斯套娃信封问题72.逻辑距离1.动态规划解题思路状态最优子结构无后效性转移方程分类讨论,细心枚举2.线性DP概述分类LISLCS数字三角形背包特长特长DP状态沿着各个维度线性增长3.基.原创 2020-09-02 08:44:06 · 421 阅读 · 0 评论 -
leetcode 买卖股票【六题集合】
参考博客:leetcode 买卖股票【六题集合】121.买卖股票的最佳时机122.买卖股票的最佳时机 II原创 2020-08-31 20:38:10 · 155 阅读 · 0 评论 -
2019华为暑期实习机试题 Java(给定一个二维0/1矩阵,找到并返回其中由1组成的最大正方形面积。)--动态规划
分析:这个题暴力解也能过了,最佳解法使用动态规划的思想:本题考虑的是正方形的面积,所以算出最长的边长就好。我们假设dp[i][j] 是以 [i][j] 为顶点的最大的正方形边长。我们可以写出状态转移方程:若 [i][j] 这个点是1 :那么dp[i][j]=min{dp[i-1][j-1],dp[i-1][j],dp[i][j-1]}+1。否则 : dp[i][j]=0暴力解法:遍历矩阵每个元素,以这个元素作为正方形的左上角,寻找最大面积。复杂度为O(n*n)。这种算法存在大量的重复计算比如: .转载 2020-08-31 20:11:23 · 588 阅读 · 0 评论 -
面试-------->反转链表和快排和插入排序
反转链表和快排和插入排序面试会遇到的问题反转链表和快排原创 2020-08-31 16:02:30 · 109 阅读 · 0 评论 -
Token、Cookie、Session
作者:华为云开发者社区链接:https://zhuanlan.zhihu.com/p/171787680来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。在Web应用中,HTTP请求是无状态的。即:用户第一次发起请求,与服务器建立连接并登录成功后,为了避免每次打开一个页面都需要登录一下,就出现了cookie,Session。CookieCookie是客户端保存用户信息的一种机制,用来记录用户的一些信息,也是实现Session的一种方式。Cookie存储的数据量有限,且原创 2020-08-28 21:03:38 · 133 阅读 · 0 评论 -
算法笔记复习
算法笔记复习文章目录算法笔记复习3.0 常用函数以及定义3.1 常用函数**ctype.h****cstring****algorithm****cmath****string**4.0 算法高效技巧4.1 打表法的使用规则4.2 活用递推B1040 有几个PAT (25分)相似题型:A1093,B1045,A1101B1045 快速排序5.0 C++标准模板库5.1 vector特点5.2 set特点5.3 stringA10606.0 搜索专题6.1 深度优先搜索Depth First Search原创 2020-08-28 20:38:03 · 689 阅读 · 0 评论 -
创建线程到底有多少种方式?
一个问题来自:https://cloud.tencent.com/developer/article/1684031话不多说,金九银十,很多同学马上就要参加秋招了。而多线程肯定是面试必问的,开篇之前,问大家一个问题:创建线程到底有几种方式?基础答案(回答错误):两种,继承 Thread 和 实现 Runnable进阶答案(回答错误):多种,继承 Thread 、实现 Runnable、线程池创建、Callable 创建、Timer 创建等等相信以上答案很多同学都能答出来。但它们都是错误的,其实创建原创 2020-08-24 22:45:31 · 473 阅读 · 0 评论 -
2020-08-21:网络IO模型有哪些?
福哥口诀法:阻非复信异(阻塞、非阻塞、多路复用、信号驱动、异步)操作系统上,分为 5 种:1.阻塞IO(blocking IO)2.非阻塞IO(non-blocking IO)3.IO多路复用(IO multiplexing)4.信号驱动IO(signal driven IO)5.异步IO(Asynchronous IO)Java语言,封装成为 3 种:Java BIOJava NIOJava AIO...原创 2020-08-22 21:00:14 · 131 阅读 · 0 评论 -
每日面试文章汇总
每日面试文章汇总目录主要是按文章类型进行分类文章目录每日面试文章汇总前言java部分--->网络IO前言在秋招只剩下几个月的情况之下,我需要每日输入知识进行学习,java知识,算法,框架,数据库,项目等等java部分—>网络IO...原创 2020-08-22 20:26:11 · 230 阅读 · 0 评论 -
阿里巴巴Java开发手册之注释规约与Javadoc标签和Javadoc注释规范
阿里巴巴Java开发手册之注释规约与Javadoc标签和Javadoc注释规范最近看源码,一些Javadoc常见的注释整理下Javadoc是Sun公司提供的一个技术,从程序源代码中抽取类、方法、成员等注释形成一个和源代码配套的API帮助文档。Javadoc命令是用来生成自己的API文档,使用方式:javadoc 源文件名.javajavadoc -d 文档存放目录 源文件名.java通过IDEA生成Javadoc : Tools -> Generate JavaDocjavad转载 2020-08-21 17:23:17 · 3264 阅读 · 0 评论 -
sql语句 where 后条件执行先后顺序
结论如下:针对mysql,其条件执行顺序是 从左往右,自上而下针对orcale,其条件执行顺序是从右往左,自下而上mysqlwhere执行顺序是从左往右执行的,在数据量小的时候不用考虑,但数据量多的时候要考虑条件的先后顺序,此时应遵守一个原则:排除越多的条件放在第一个在用MySQL查询数据库的时候,连接了很多个过滤条件,发现非常慢。例如:SELECT … WHERE p.languages_id=1 AND t.type=1 AND p.products_id IN (472,474)转载 2020-08-18 14:29:51 · 3655 阅读 · 0 评论 -
数据库设计三范式
数据库设计三范式文章目录数据库设计三范式1.0什么设计范式?1.1三范式都是那些?1.2一对一怎么设计?怎么设计?1.0什么设计范式?设计表的依据,按照这三范式设计设计的表不会出现数据冗余.复习一下数据依赖 :完全依赖: 通过{学生学号, 选修课程名}可以得到{该生本门选修课程的成绩},而通过单独的{学生学号}或者单独的{选修课程名}都无法得到该成绩,则说明{该生本门选修课程的成绩}完全依赖于{学生学号,选修课程名}部分函数依赖: 通过{学生学号,课程号}可以得到{该生姓名},而通过单独原创 2020-08-12 21:08:30 · 262 阅读 · 1 评论 -
java面试准备
基础Arrays.sort实现原理和Collection实现原理foreach和while的区别(编译之后)线程池的种类,区别和使用场景分析线程池的实现原理和线程的调度过程线程池如何调优线程池的最大线程数目根据什么确定动态代理的几种方式HashMap的并发问题了解LinkedHashMap的应用吗反射的原理,反射创建类实例的三种方式是什么?cloneable接口实现原理,浅拷贝or深拷贝Java NIO使用hashtable和hashmap的区别及实现原理,hashmap会问到数组原创 2020-08-12 11:33:22 · 82 阅读 · 0 评论 -
字节跳动客户端一面
字节跳动客户端一面文章目录字节跳动客户端一面1.自我介绍2.你知道什么是jvm吗3.什么是翻译和编译3.1为什么要有翻译程序3.2编译方式3.3解释方式3.4三种语言处理程序4.jm的内存结构5.操作系统的缓存对应jvm的内存结构的哪一块1.自我介绍2.你知道什么是jvm吗3.什么是翻译和编译内容:编译原理3.1为什么要有翻译程序 计算机并不能直接地接受和执行用高级语言编写的源程序,源程序在输入计算机时,通过"翻译程序"翻译成机器语言形式的目标程序,计算机才能识别和执行。这种"原创 2020-08-09 22:28:06 · 511 阅读 · 0 评论 -
JAVA IO全面总结
JAVA IO全面总结简单描述:对于初学者来学,Java IO相对来说较为复杂,因为里面使用的父类与子类较多,所以我们要坚定一个学习规则:抽象类中定义的抽象方法会根据实例化子类的不同,也会完成不同的方法如果要进行所有的文件以及文件内容的开发操作,应该使用java.io包完成,而且整个java.io包实际上就是五个类和一个接口:接下来的知识,我们应该熟读加背诵给安排上???????? ???? ???? 五个类:File ,InputStream,OutStream,Reader,Writer原创 2020-08-08 20:42:08 · 345 阅读 · 0 评论 -
ServletContext(源码分析)
JavaWeb–ServletContext一、基本概念说起ServletContext,一些人会产生误解,以为一个servlet对应一个ServletContext。其实不是这样的,事实是一个web应用对应一个ServletContext,所以ServletContext的作用范围是整个应用,明确这点很重要,这是基础中的基础。我曾经想,为什么不起名叫WebContext或者ApplicationContext或者WebApplicationContext?这样见名知意多好。后来我想这也可能是有历史原原创 2020-08-07 07:10:07 · 690 阅读 · 0 评论 -
数据结构期末考试试题总结
数据结构期末考试试题总结文章目录数据结构期末考试试题总结第1章 第一单元课程介绍; 数据结构第1~2章第2章 第二单元第3章栈和队列1.0中缀表达式为( A + B ) × C – D / E,则其后缀表达式为何?2.0中缀表达式为A+B×C-D,则其前缀表达式为何?第3章 第三单元第4章 串、数组、广义表1.0串“abcaabbabcab”的next数组为( )。(5.0分)2.0串“abcaabbabcab”的nextval为( )。(5.0分)第4章 第四单元第5章树和二叉树第5章 第五单元第5章树原创 2020-08-01 00:46:03 · 2622 阅读 · 0 评论 -
常见jquery面试题20道
常见jquery面试题文章目录常见jquery面试题jQuery 面试问题和答案1. jQuery 库中的 $() 是什么?2. 网页上有 5 个<div> 元素,如何使用 jQuery来选择它们?3. jQuery 里的 ID 选择器和 class 选择器有何不同?4. 如何在点击一个按钮时使用 jQuery 隐藏一个图片?5. $(document).ready() 是个什么函数?为什么要用它?6. JavaScript window.onload 事件和 jQuery ready 函数转载 2020-07-26 22:11:05 · 1345 阅读 · 0 评论 -
HTTP协议格式以及HTTP消息头详解
HTTP协议格式以及HTTP消息头详解1)TCP/IP知识回顾在学习计算机网络的原理时往往采取综合OSI和TCP/IP的优点,采用一种只有五层协议的体系结构从应用层至物理层,数据是一层层封装,封装的方式一般都是在原有数据的前面加一个数据控制头,数据封装格式如下:2)HTTP协议简介http1.0HTTP/1.0:客户端可以与web服务器联结之后,只能获得一个web资源http2.0HTTP/1.1:客户端可以与web服务器连接之后,一可以获得多个web资源超文本传输协议(Hyp转载 2020-07-25 22:47:32 · 5381 阅读 · 0 评论 -
透彻理解联合索引(a,b,c)
目录:文章目录1.0联合索引原理:2.联合索引实际应用1.0联合索引原理:用到索引的有a,ab,abc,ac 因为优化器会自动调整and前后的顺序,所以ba,cba,bca,ca都会用到索引,其他的都不会用到该索引。ac这一组仅仅是a用到索引。组合索引 有“最左前缀”原则,遇到范围查询(>、<、between、like)就会停止匹配。为什么是“最左匹配”原则,可以通过数据结构来看:联合索引是一颗b+树(a,b)2.联合索引实际应用情况描述:在MySQL的user表中,对a,b,c转载 2020-07-24 20:43:49 · 17165 阅读 · 3 评论 -
Java的八种基本类型、隐式转换、强制转换以及特殊转换
(1)常用基本类型汇总文章目录(1)常用基本类型汇总(2)byte类型(3)short类型(4)Int类型(5)Long类型(6)浮点数类型(7)char类型(8)boolean类型(9)类型之间的转换(10)代码实例 八种基本类型汇总八种基本类型的字节空间和应用场景(2)byte类型基本介绍:byte数据类型是8位、有符号的,以二进制补码表示的整数;最小值是-128(-2^7); 最大值是127(2^7-1); 默认值是0; 例如:byte bt = 120;(3)转载 2020-07-23 18:04:20 · 626 阅读 · 0 评论 -
中科软算法面试题_解题
136. 只出现一次的数字1 、给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。示例 1:输入: [2,2,1]输出: 1示例 2:输入: [4,1,2,1,2]输出: 4//哈希计算数组重复数字public static void p1(int a[]) { int []nums=new int[10]; for (int i = 0; i <a.length ; i++) { nums[a[i原创 2020-07-21 16:34:37 · 599 阅读 · 0 评论 -
mysql生成不重复随机数(unique number generation)
待整理参考博客MySql给表中某字段插入随机数示例:给 表中的某个字段插入随机数数据,取值500~2000update 表名 set 字段名 = floor(500+rand()*1500);floor:函数只返回整数部分,小数部分舍弃,即向上取整rand:函数用于产生0(包含)到1(不包含)的随机数我们经常会遇到使用随机的问题,下面就是一种解决随机数的方法。在构造测试数据时,我们需要对测试表插入随机数据。构造测试数据的方法如下,仅以update为例说明步骤1:随机数的SQL函数为rand原创 2020-07-21 11:37:54 · 3115 阅读 · 0 评论 -
一道面试题 67. 二进制求和
67. 二进制求和给你两个二进制字符串,返回它们的和(用二进制表示)。输入为 非空 字符串且只包含数字 1 和 0。示例 1:输入: a = "11", b = "1"输出: "100"示例 2:输入: a = "1010", b = "1011"输出: "10101"提示:每个字符串仅由字符 ‘0’ 或 ‘1’ 组成。1 <= a.length, b.length <= 10^4字符串如果不是 “0”,就都不含前导零。方法一:模拟思路和算法这里我们需要理解原创 2020-07-20 23:57:31 · 150 阅读 · 0 评论 -
一口气说出9种分布式ID生成方式,阿里面试官都懵了
一口气说出9种分布式ID生成方式,阿里面试官都懵了 - Java程序猿呀的文章 - 知乎今天主要分析一下以下9种,分布式ID生成器方式以及优缺点:UUID数据库自增ID数据库多主模式号段模式Redis雪花算法(SnowFlake)滴滴出品(TinyID)百度 (Uidgenerator)美团(Leaf)那么它们都是如何实现?以及各自有什么优缺点?我们往下看...转载 2020-07-20 17:08:38 · 580 阅读 · 0 评论 -
数据库–牛客数据库SQL实战(前20道题中等)汇总
牛客上的SQL实战题解,一共有60道题,我准备一个星期内解决完成,通过实践来巩固基础.会在每道题里写出自己的理解.与解题思路.会在每道题中写出对应与数据库关联的知识.SQL1 查找最晚入职员工的所有信息题目描述查找最晚入职员工的所有信息,为了减轻入门难度,目前所有的数据里员工入职的日期都不是同一天(sqlite里面的注释为–,mysql为comment)CREATE TABLE `employees` (`emp_no` int(11) NOT NULL, -- '员工编号'`birth_da原创 2020-07-11 18:22:11 · 480 阅读 · 1 评论 -
java字符串String转换为char数组,String转换为List
String[]与List的相互转换1.0 String[]与List的相互转换String[] arr = new String[]{"s1","s2","s3"};List<String> list = Arrays.asList(arr); 1.2 List转String[]List<String> list = new ArrayList<String>();list.add("s1");list.add("s2");list.add("s3")原创 2020-06-22 20:13:40 · 2644 阅读 · 0 评论 -
Java之去除字符串中所有空格的方法
1、String.trim() trim()是去掉首尾空格2、str.replace(" ", “”);去掉所有空格,包括首尾、中间复制代码 代码如下: String str = " hell o "; String str2 = str.replaceAll(" ", ""); System.out.println(str2);3、str.replaceAll(" +",""); 去掉所有空格4、str = str.replaceAl原创 2020-06-22 19:54:25 · 768 阅读 · 0 评论 -
java List去除重复数据的五种方式
1.使用LinkedHashSet删除arraylist中的重复数据numbersList是包含整数的arraylist,其中一些是重复的数字,例如1,3和5.我们将列表添加到LinkedHashSet,然后将内容返回到列表中。结果arraylist没有重复的整数。import java.util.ArrayList; import java.util.Arrays; import java.util.LinkedHashSet; public class ArrayListExam原创 2020-06-22 19:41:28 · 569 阅读 · 1 评论