![](https://img-blog.csdnimg.cn/20200320085116456.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
工作面试
文章平均质量分 54
打怪历程
福尔摩东
上岸求求了
展开
-
SpringCloud
SpringCloud服务拆分,将单体项目拆分成多个独立的项目注册中心:存储多个服务的信息配置中心:存取配置信息服务网关:对用户的身份进行校验,请求路由,做负载均衡缓存:分布式缓存分布式搜索分布式日志服务自动化部署服务架构演变单体架构:所有的功能在一个项目中进行开发,打成一个包部署。耦合性较高分布式架构,将服务进行拆分,业务模块进行独立项目开发,耦合度较低,便于升级维护拓展认识微服务微服务是一种分布式架构设计方案特征:单一职责:微服务拆分粒度较小,每个服务对应着唯一的业务能原创 2022-03-25 15:21:30 · 511 阅读 · 0 评论 -
LeetCode周赛补题
中午不想打,下午补一补[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UgG2LLq2-1642683002754)(/upload/2022/01/image-2a1076f88bfd4145b9d4fe4ee3518ceb.png)]5980. 将字符串拆分为若干长度为 k 的组简单模拟class Solution { public String[] divideString(String s, int k, char fill) { .原创 2022-01-20 20:50:18 · 588 阅读 · 0 评论 -
值域二分专题
TOCLeetCode374.猜数字大小/** * Forward declaration of guess API. * @param num your guess * @return -1 if num is lower than the guess number * 1 if num is higher than the guess number * otherwise return 0 * int guess(int n原创 2022-01-20 20:48:21 · 249 阅读 · 0 评论 -
Trie树
TOCTrie树快速存储和查找字符串集合的数据结构142. 前缀统计import java.util.*;class Main{ static int N = (int)1e6+10; static int[][]ch = new int[N][26]; static int idx = 0; static int[] end = new int[N]; public static void main(String[] args){ Sc原创 2022-01-20 20:47:41 · 179 阅读 · 0 评论 -
最长公共子串与最长公共子序列问题
TOC最长公共子串动态规划解决注意这题求的是最长公共子串,不是最长公共子序列,子序列可以是不连续的,但子串一定是连续的。定义dp[i][j]表示字符串str1中第i个字符和str2种第j个字符为最后一个元素所构成的最长公共子串。如果要求dp[i][j],也就是str1的第i个字符和str2的第j个字符为最后一个元素所构成的最长公共子串,我们首先需要判断这两个字符是否相等。如果不相等,那么他们就不能构成公共子串,也就是dp[i][j]=0;如果相等,我们还需要计算前面相等字符的个数,其实就是dp原创 2022-01-20 20:47:09 · 209 阅读 · 0 评论 -
最长上升子序列专题
TOC补充最大上升子序列和import java.util.*;class Main{ public static void main(String[]args){ Scanner sc = new Scanner(System.in); int[]dp = new int[1010]; int[]arr = new int[1010]; int n = sc.nextInt(); for(int i = 1;原创 2022-01-20 20:46:31 · 79 阅读 · 0 评论 -
从0写一个hash表?你懂字符串哈希吗?
重新认识Hash表1. 模拟哈希表1.1 开放寻址法1.2 拉链法2. 字符串哈希2.1 处理字符串经常用的还有KMP3. leetcode 习题 1871. 模拟哈希表1.1 开放寻址法开放寻址法- 线性探测法#include<iostream>#include<cstring>using namespace std;const int N = 2e5+10,null = 0x3f3f3f3f;int p[N];int find(int x){原创 2021-10-08 12:01:11 · 204 阅读 · 0 评论 -
滑动窗口系列总结
滑动窗口题解待更新ACWING154 滑动窗口ACW135 最大子序和替换后的最长重复字符和大于等于 target 的最短子数组ACWING154 滑动窗口(https://www.acwing.com/problem/content/156/)#include<bits/stdc++.h>using namespace std;const int N = 1e6+10;int n,m;int p[N],q[N];int hh = 0,tt = -1;int main(){原创 2021-10-07 00:12:51 · 157 阅读 · 0 评论 -
连通块和连通分量,快来看
关于连通块的小技巧砍树砍树给定一棵包含 n个节点的树。你的任务是从树中删除尽可能多的边,使得剩余图形的所有连通分量都具有偶数个节点。输入格式第一行包含整数 n。接下来 n−1 行,每行包含两个整数 a,b,表示节点 a 和 b之间存在一条边。节点编号 1∼n。保证给出图形是一棵树。输出格式输出一个整数表示可以删除的最大可能边数。如果无论如何都不可能使得剩余图形的所有连通分量都具有偶数个节点,则输出 −1。数据范围前六个测试点满足,1≤n≤10。所有测试点满足,1≤n≤105,1≤a原创 2021-10-04 17:32:40 · 465 阅读 · 0 评论 -
拓扑排序求最长路
ACWING 3813#include<bits/stdc++.h>using namespace std;const int N = 3e5+10, M = 3e5+10; int h[N], ne[M], e[M],idx,d[N];char w[N];int n,m;//f[N]用来存储每个int dist[N],g[N];void add(int a, int b) // 添加一条边a->b,边权为c{ e[idx] = b, ne[idx] =原创 2021-08-30 00:12:08 · 360 阅读 · 0 评论 -
约瑟夫环and汉诺塔and摩尔投票法
约瑟夫环and汉诺塔and摩尔投票法1.汉诺塔问题2.约瑟夫环数组循环链表3.摩尔投票法1.汉诺塔问题类似于中序遍历,两次递归#include<bits/stdc++.h>using namespace std;void move(int n, char start, char goal,char temp){ if(n >= 1){ move(n-1,start,temp,goal); printf("disk%d from %c原创 2021-08-25 16:59:05 · 157 阅读 · 0 评论 -
leetcode第253场周赛
第253场周赛5838. 检查字符串是否为数组前缀5839. 移除石子使总数最小5840. 使字符串平衡的最小交换次数5841. 找出到每个位置为止最长的有效障碍赛跑路线这次周赛较简单,一个小时写了三个题,最后一个题,忘了贪心加二分的最长公共子序列咋写了,dp的卡了,完了补了一下。5838. 检查字符串是否为数组前缀class Solution { public boolean isPrefixString(String s, String[] words) { Stri原创 2021-08-08 15:15:46 · 160 阅读 · 0 评论 -
第k小个数和第k大个数,5种方法,速看!!!
1.第k小个数地址:链接地址1.1时间复杂度O(n)1.1.1基于快排实现将k值当做物理地址的值,比如第5个数其实就是数组4的位置,第2个数就是数组1的位置每次只需要判断k在左区间还是右区间,一直递归查找k所在区间最后只剩一个数时,只会有数组[k]一个数,返回数组[k]的值就是答案描述将k值当做物理地址的值,比如第5个数其实就是数组4的位置,第2个数就是数组1的位置每次只需要判断k在左区间还是右区间,一直递归查找k所在区间最后只剩一个数时,只会有数组[k]一个数,返回数组[k]的值就原创 2021-06-22 11:47:17 · 959 阅读 · 0 评论 -
大厂:我心里的候选人是这样的
大厂:我心里的候选人是这样的面试类型面试计算机基础知识系统设计企业文化如何准备算法面试科学刷题之“三刷”训练法科学刷题之“五步”训练法1. 理解题面2.部分实现3.有提示解答4.独立解答5.写题解入门算法总结算法面试类型面试算法考察coding,algorthm and data structure,testing软技能: problem solving efficacy (效用),communication计算机基础知识操作系统,计算机网络,常用框架等,主要考察知识储备+应用能力系统设原创 2021-06-01 11:51:27 · 148 阅读 · 1 评论 -
剑指OFFER76题,依次更新中
这里写目录标题剑指OFFER1.找出数组中重复的数字2.不修改数组找出重复的数字3. 二维数组中的查找4.替换空格5.从尾到头打印链表6.重建二叉树7.二叉树的下一个节点8.用两个栈实现队列9.斐波那契数列10.旋转数组的最小数字11.矩阵中的路径12.机器人的运动范围13.剪绳子剑指OFFER1.找出数组中重复的数字class Solution { public int duplicateInArray(int[] nums) { int len = nums.leng原创 2021-05-30 23:40:02 · 138 阅读 · 1 评论 -
校招进大厂的Tips
面经地址+总结扎实基础,编程四大件数据结构&算法,计网,操作系统,设计模式需要全文背诵并活学活用,此为重中之重。提前积累竞赛/项目经验,算法竞赛作为一个显示技术功底的标志,可以有效的提高代码量和拓宽编码思维逻辑,拿个ACM大奖估计不愁求职问题了,同样的项目经验虽然也是作为一个加分项的存在,但拥有一定的对口项目经验在筛选和面试中都能有一定的优势。秋招之前的实习,这点本菜之前完全没有意识到实习的重要性,现在追悔莫及,22届的实习现在已经开始可以投递了,通常春招时会有大量的实习岗位放出,实习时间除原创 2021-01-30 22:53:06 · 2080 阅读 · 2 评论 -
面试准备算法,教你解算法题!
面试准备算法,教你解算法题!先看数据范围,进行简单推断根据题意,对复杂度的要求进行分析在可能出现的算法中进行枚举写代码:模板+输入输出本文总结于 YXC 的视频讲解:先看数据范围,进行简单推断将常见的算法进行复习:了解算法的作用了解它的输入与输出,最好将原理与公式手推一遍背模板清楚时间复杂度根据题意,对复杂度的要求进行分析对题意进行快速分析的能力在可能出现的算法中进行枚举对各种各样的算法有一个深入的了解,代码熟练。写代码:模板+输入输出其实最重要的还是思维!!!建议去A原创 2021-01-24 23:18:25 · 250 阅读 · 3 评论 -
JVM发展历程
JVM 发展历程❝在了解JVM之前,我们必须对它的发展有所了解,先了解一下JVM的发展历程吧!!!❞sun Classic VM世界第一款商用Java虚拟机JDK1.4时被淘汰只提供了解释器如果使用JIT编译器,就需要外挂,但是JIT和解释器不能配合工作Exact VM为了解决上一个虚拟机问题,JDK1.2时,sun提供了此虚拟机Exact Memory Management :准确式内存管理虚拟机知道内存中某个位置的数据是什么类型具有现代高性能虚拟机的雏形热点探测编译原创 2020-12-06 21:57:57 · 488 阅读 · 3 评论 -
Java内存区域详解
Java内存区域详解(第二篇)❝对于 Java 程序员来说,在虚拟机自动内存管理机制下,不再需要像 C/C++程序开发程序员这样为每一个 new 操作去写对应的 delete/free 操作,不容易出现内存泄漏和内存溢出问题。正是因为 Java 程序员把内存控制权利交给 Java 虚拟机,一旦出现内存泄漏和溢出方面的问题,如果不了解虚拟机是怎样使用内存的,那么排查错误将会是一个非常艰巨的任务。❞运行时数据区域Java 虚拟机在执行 Java 程序的过程中会把它管理的内存划分成若干个不同的数据区域。原创 2020-12-06 21:31:14 · 302 阅读 · 0 评论 -
不会还有人不知道中间件是啥吧?
不会还有人不知道中间件是啥吧?引言一. 中间件是什么?二. 中间件能干啥?2.1 中间件在应用开发中担任的角色三. 中间件特点四. 中间件的分类引言中间件(middleware)一词每天都被不同的人群所提及,中间件的产品也大量出现在软件市场,但中间件的定义却一直比较模糊,导致中间件的分类也不很统一。也许正因为如此,才使人们不断地设计和开发新的产品,并冠以中间件的标签,推动着中间件的内涵和市场不断地向前发展。相信大家看这篇文章的初心就是单纯想了解一下 中间件是啥?能干啥?我为什么要学它?公司中为啥要原创 2020-10-13 10:25:02 · 7154 阅读 · 2 评论 -
Github上不为人知的那些事
Github上不为人知的那些事一.设置看起来还阔以的主界面GitHub 统计卡片隐藏指定统计将私人项目贡献添加到总提交计数中显示图标主题所有现有主题二.搭建图床三.搭建个人博客四.搭建一个文档类型的网站你知道的越多,你不知道的越多 --三太子敖丙一.设置看起来还阔以的主界面这里推荐的教程是江南一点雨的教程,大家可以关注它的公众号,公众号同名!!!这里是教程,大家可点击观看!!!下面是开源的地址,里面有多种语言的介绍,可以在你的 README 中获取动态生成的 GitHub 统计信息!G原创 2020-08-24 14:02:34 · 309 阅读 · 0 评论 -
Lombok安装,原理及教程,nice!!!
面对工作中大量重复的,毫无技术含量 get()、set()方法,你是不是抱怨过?那你听说过 Lombok 吗?那你知道 Lombok 还有哪些鲜为人知的秘密吗?Lombok 简介Project Lombok is a java library that automatically plugs into your editor and build tools, spicing up your java.Never write another getter or equals method ag..原创 2020-07-16 19:44:15 · 453 阅读 · 0 评论 -
最妙的关于微服务架构的文章,没有之一!
最妙的关于微服务架构的文章,没有之一!最初的需求随着业务发展……是时候做出改变了没有银弹监控 - 发现故障的征兆定位问题 - 链路跟踪分析问题 - 日志分析网关 - 权限控制,服务治理服务注册于发现 - 动态扩容熔断、服务降级、限流熔断服务降级限流测试微服务框架另一条路 - Service Mesh结束、也是开始本文将介绍微服务架构和相关的组件,介绍他们是什么以及为什么要使用微服务架构和这些组件。本文侧重于简明地表达微服务架构的全局图景。要理解微服务,首先要先理解不是微服务的那些。通常跟微服务相对转载 2020-07-03 11:59:58 · 226 阅读 · 0 评论 -
在线审稿投稿管理系统,就这?
在线审稿投稿管理系统一. 内容与要求二. 开发环境三. 页面展示四. 需求分析五. 部分代码分析六. 总结本项目基于IDEA进行开发,前端使用mdui框架,后端基于MVC开发模式实现,数据库方面使用了Mysql,主要使用了数据库的备份还原以及触发器的技术。数据库连接方面主要使用阿里巴巴的Druid连接池和Spring的JdbcTemplate,版本控制方面基于Git和Github进行版本控制。已上传github,也欢迎大家观看我的博客一. 内容与要求设计内容:在线投稿审稿管理系统数据库包括以原创 2020-07-02 10:52:29 · 7561 阅读 · 8 评论 -
要分专业了,我选大数据还是人工智能?
要分专业了,我选大数据还是人工智能?主流方向介绍1.云计算与大数据1.1 含义1.2 大数据的特性1.3 产业界的大数据架构1.4 核心课程2.软件开发与测试2.1 核心课程和特色课程3.企业信息化4.智慧城市5.人工智能5.1 介绍5.2 核心课程5.3 就业方向即将大三的我要面临分专业方向的问题,高考时就面临一次重要的选择,那次我家里人帮我选择了软件工程,这次我要自己选择喜欢,有就业前景的专业方向。主流方向介绍1.云计算与大数据1.1 含义云计算(Cloud Computing)是一种原创 2020-06-15 00:49:55 · 3863 阅读 · 2 评论 -
你想搭建免费的CDN吗?试试jsDelivr + Github
你想搭建免费的CDN吗?试试jsDelivr + Github一. 为什么要搭建CDN二. 简单的搭建CDN2.1 新建GitHub仓库2.2 克隆GitHub到本地2.3 上传资源2.4 发布仓库三. 查看搭建效果CDN的全称是Content Delivery Network,即内容分发网络。CDN是构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。CDN的关键技原创 2020-05-26 13:57:36 · 604 阅读 · 0 评论 -
面试官:个人博客都没有?
搭建个人博客,你选择开源还是开发?开源的博客系统1. WordPress2. Halo3. Hexo个人开发开源的博客系统1. WordPressWordPress是一款个人博客系统,并逐步演化成一款内容管理系统软件,它是使用PHP语言和MySQL数据库开发的,用户可以在支持 PHP 和 MySQL数据库的服务器上使用自己的博客。WordPress有许多第三方开发的免费模板,安装方式简单易用。不过要做一个自己的模板,则需要你有一定的专业知识。比如你至少要懂的标准通用标记语言下的一个应用HTML代码原创 2020-05-15 11:26:59 · 14467 阅读 · 49 评论 -
照着书敲linux下载安装命令?大汇总来咯!!!
linux下载安装的命令本地上传网络远程下载你是否想对linux下载的命令有一些了解,你是否知道wegt,curl,yum如何使用,如果文件在本地又该如何上传服务器,下载后不同后缀的文件又该如何解压,又该解压到哪里,这篇文章带你了解我的疑惑。本地上传网络远程下载先了解一下sudo吧,sudo 全称是switch user and do something,sudo是linux系统管理指令,是允许系统管理员让普通用户执行一些或者全部的root命令的一个工具,一般下载安装建议使用(没坏处)。下原创 2020-05-14 12:37:15 · 6693 阅读 · 4 评论 -
开发APP、微信小程序、网页,都需要什么?
个人开发APP,微信小程序,网页都需要什么?准备工作前端开发后端开发技术整合打包上线结语在开始介绍之前,我先罗列一下APP,微信小程序,网页的大比较准备工作云服务器,域名(需备案),SSL证书云服务器:关于云服务器,如果不着急产品上线,可以去阿里云或者腾讯云购买,我更推荐阿里云(学生9.5一个月的服务器学习够用了);你可以去官网的最新活动里查找,在阿里云大学或者腾讯云大学里都有如...原创 2020-05-08 17:27:27 · 21048 阅读 · 15 评论 -
接着读完它,linux基础不会?都难!!!
接着读完它,linux基础不会都难一. Vi和Vim编辑器Vim编辑器接着上篇文章,读完它,开发学习简直美滋滋!!!一. Vi和Vim编辑器Vim编辑器在Linux下一般使用vi编辑器来编辑文件。vi既可以查看文件也可以编辑文件。三种模式:命令行、插入、底行模式。切换到命令行模式:按Esc键;切换到插入模式:按 i 、o、a键; i 在当前位置前插入 I 在当前...原创 2020-04-28 22:48:44 · 1910 阅读 · 0 评论 -
看完它,linux基础不会?都难!
看完它linux命令不会都难linux的概述unix的了解linux的概述先了解一下linux的概述和安装linux的概述unix的了解Unix是一个强大的多用户、多任务操作系统。于1969年在AT&T的贝尔实验室开发。UNIX的商标权由国际开放标准组织(The Open Group)所拥有。UNIX操作系统是商业版,需要收费,价格比Microsoft Windows正版要贵一...原创 2020-04-28 22:12:48 · 1498 阅读 · 2 评论 -
蓝桥杯2018年省赛真题超详解
蓝桥杯2018年省赛真题超详解第一题:第几天第二题:方格计数第一题:第几天1.2000年的1月1日,是那一年的第1天。那么,2000年的5月4日,是那一年的第几天?注意:需要提交的是一个整数,不要填写任何多余内容。解法:判断2000年是否是闰年,再进行计算每月有31天的有:1,3,5,7,8,10,12每月30天的有:4,6,9,112月是平月(28)或者闰月(29)packag...原创 2020-04-17 08:06:38 · 1680 阅读 · 0 评论 -
2020大数据技术体系结构图,你值得拥有
大数据技术体系结构图JAVAJAVAEE核心![在这里插入图片描述](https://img-blog.csdnimg.cn/20200414153406929.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQzNjg4NTg3,...原创 2020-04-14 15:41:41 · 2377 阅读 · 2 评论 -
如何修改git仓库的账号,密码???
找到GIt GUI2.输入命令:git config --global user.name “你的名字”git config --global user.email"xx@qq.com" 3. 随后在C:\Users\用户名下找到.gitconfig4.结果如下:原创 2020-04-14 11:59:31 · 5984 阅读 · 0 评论 -
2020年必学的devops流行工具,你学会了吗?
2020年必学的devops流行工具1.Git2.Docker3.Selenium4.Jenkins5.Ansible6.puppet7.Nagios8.ChefDevOps: Development和Operations的组合可以把DevOps看作开发(软件工程)、技术运营和质量保障(QA)三者的交集Devops是一种利用云创新,自动化和制度化来从根本上加速传统编程的改进模式如Git,...原创 2020-03-29 12:03:28 · 654 阅读 · 0 评论 -
最通俗易懂的多线程面试60题
1.多线程有什么用?*1)发挥多核CPU 的优势 随着工业的进步,现在的笔记本、台式机乃至商用的应用服务器至少也都是双核的 ,4 核、8 核甚至 16 核的也都不少见,如果是单线程的程序,那么在双核 CPU 上 就浪费了 50%, 在 4 核 CPU 上就浪费了 75%。单核 CPU 上所谓的"多线程"那是 假的多线程,同一时间处理器只会处理一段逻辑,只不过线程之间切换得比较快, 看着像多个线程...原创 2020-01-29 13:37:07 · 589 阅读 · 0 评论