自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 ElasticSearch 分页查询及深度分页原理与实现

的方式要更加高效,而且在不断有新数据入库的时候仅仅使用 from 和 size 分页会有重复的情况,相比使用 scroll 分页,search_after 可以进行实时的查询,不过 search_after。分页的深度,ElasticSearch 的分页窗口默认最多允许 10000 条数据,即 在每页 20 条数据的情况,最多可以分 500 页,超过后报错。scroll 查询的相应数据是非实时的,这点和PIT视图比较类似,如果遍历过程中插入新的数据,是查询不到的。并且保留上下文需要足够的堆内存空间。....

2022-08-15 10:22:23 4401

原创 Mybatis插件原理(代理+责任链)

Mybatis插件原理 在实际开发过程中,我们经常使用的Mybaits插件就是分页插件了,通过分页(例如 PageHelper)插件我们可以在不用写count语句和limit的情况下就可以获取分页后的数据,给我们开发带来很大的便利。除了分页,插件使用场景主要还有更新数据库的通用字段,分库分表,加解密等的处理。 JDK动态代理+责任链设计模式 Mybatis的插件其实就是个拦截器功能。它利用JDK动态代理和责任链设计模式的综合运用。采用责任链模式,通过动态代理组织多个拦截器,通过这些拦截器你可以做一些你想做的

2021-11-10 15:31:42 406 2

原创 MYSQL - MYSQL语法基础

SQL语言 - SQL语法基础 基础 模式定义了数据如何存储、存储什么样的数据以及数据如何分解等信息,数据库和表都有模式。 主键的值不允许修改,也不允许复用(不能使用已经删除的主键值赋给新数据行的主键)。 SQL(Structured Query Language),标准 SQL 由 ANSI 标准委员会管理,从而称为 ANSI SQL。各个 DBMS 都有自己的实现,如 PL/SQL、Transact-SQL 等。 SQL 语句不区分大小写,但是数据库表名、列名和值是否区分依赖于具体的 DBMS 以及配置

2021-10-31 15:11:08 337

原创 Thread.currentThread().getContextClassLoader()区别

getContextClassLoader()方法 这个方法返回叫线程上下文类加载器。这个加载器的类型指定的工作交给了线程创建者,创建者在创建线程之后用对应的setContextClassLoader()方法将适合的类加载器设置到线程中,那么线程中的代码就可以通过getContextClassLoader()获取到这个类加载器来加载类或者资源。如果不设置默认是系统类加载器就是 app ClassLoader()。 简单的比方,你一个WEB程序,发布到Tomcat里面运行。 首先是执行Tomcat .

2021-10-16 13:25:47 980

原创 React 学习基础笔记

React 安装 React 可以直接下载使用,下载包中也提供了很多学习的实例。 本教程使用了 React 的版本为 16.4.0,你可以在官网 https://reactjs.org/ 下载最新版。 <script src="https://cdn.staticfile.org/react/16.4.0/umd/react.development.js"></script> <script src="https://cdn.staticfile.org/react-dom/1

2021-07-21 10:50:05 265

原创 说一下 b树

博客 B树和B+树的出现是因为另外一个问题,那就是磁盘IO;众所周知,IO操作的效率很低,那么,当在大量数据存储中,查询时我们不能一下子将所有数据加载到内存中,只能逐一加载磁盘页,每个磁盘页对应树的节点。造成大量磁盘IO操作(最坏情况下为树的高度)。平衡二叉树由于树深度过大而造成磁盘IO读写过于频繁,进而导致效率低下。 (1)、每个节点存储多个元素 (2)、摒弃二叉树结构,采用多叉树 B树 (多路平衡二叉树) 所有节点中 孩子节点数 最大值 称为B树的阶 一颗m阶B树,或为满足如下特性的m叉树 关键字就是

2021-07-16 10:51:42 219

原创 Java岗位面试真题宝典 (牛客)

Java岗位面试真题宝典 ① NC72二叉树的镜像 输入:root = [4,2,7,1,3,6,9] 输出:[4,7,2,9,6,3,1] 解题思路 dfs的建树时候先遍历右边即可 题解代码 class Solution { public: TreeNode* mirrorTree(TreeNode* root) { if(root == NULL) return NULL; TreeNode* top = new TreeNode(root -> v

2021-06-21 17:12:40 522

原创 面试题 01.06. 字符串压缩

面试题 01.05. 一次编辑 字符串压缩。利用字符重复出现的次数,编写一种方法,实现基本的字符串压缩功能。比如,字符串aabcccccaaa会变为a2b1c5a3。若“压缩”后的字符串没有变短,则返回原先的字符串。你可以假设字符串中只包含大小写英文字母(a至z)。 示例 1: 输入:“aabcccccaaa” 输出:“a2b1c5a3” 示例 1: 输入:“abbccd” 输出:“abbccd” 解释:“abbccd"压缩后为"a1b2c2d1”,比原字符串长度更长。 解题思路 注意: ans =

2021-06-21 15:56:43 203

原创 面试题 01.05. 一次编辑(leetcode)

面试题 01.05. 一次编辑 字符串有三种编辑操作:插入一个字符、删除一个字符或者替换一个字符。 给定两个字符串,编写一个函数判定它们是否只需要一次(或者零次)编辑。 示例 1: 输入: first = “pale” second = “ple” 输出: True 示例 1: 输入: first = “pales” second = “pal” 输出: False 解题思路 dp class Solution { public: int f[1000][1000] = {0}; b

2021-06-21 15:53:22 175

原创 面试题 01.04. 回文排列 (leetcode)

面试题 01.04. 回文排列 给定一个字符串,编写一个函数判定其是否为某个回文串的排列之一。 回文串是指正反两个方向都一样的单词或短语。排列是指字母的重新排列。 回文串不一定是字典当中的单词。 示例 1: 输入:“tactcoa” 输出:true(排列有"tacocat"、“atcocta”,等等) 解题 class Solution { public: bool canPermutePalindrome(string s) { int a[257] = {0};

2021-06-21 15:49:42 137

原创 面试题 01.03. URL化(leetcode)

面试题 01.03. URL化 URL化。编写一种方法,将字符串中的空格全部替换为%20。假定该字符串尾部有足够的空间存放新增字符,并且知道字符串的“真实”长度。(注:用Java实现的话,请使用字符数组实现,以便直接在数组上操作。) 示例 1: 输入:"Mr John Smith ", 13 输出:“Mr%20John%20Smith” 示例 2: 输入:" “, 5 输出:”%20%20%20%20%20" 解题 class Solution { public:

2021-06-21 15:27:06 143

原创 面试题 01.02. 判定是否互为字符重排(leetcode)

面试题 01.01. 判定字符是否唯一 给定两个字符串 s1 和 s2,请编写一个程序,确定其中一个字符串的字符重新排列后,能否变成另一个字符串。 示例 1: 输入: s1 = “abc”, s2 = “bca” 输出: true 示例 2: 输入: s1 = “abc”, s2 = “bad” 输出: false 解题 class Solution { public: bool CheckPermutation(string s1, string s2) { int a[2

2021-06-21 15:23:38 125

原创 面试题 01.01. 判定字符是否唯一 (leetcode)

面试题 01.01. 判定字符是否唯一 实现一个算法,确定一个字符串 s 的所有字符是否全都不同。 示例 1: 输入: s = “leetcode” 输出: false 示例 2: 输入: s = “abc” 输出: true 解题 class Solution { public: bool isUnique(string astr) { int a[26] = {0}; for(int i = 0;i < astr.length();i++){

2021-06-21 15:21:56 138

原创 递归实现指数型枚举

92. 递归实现指数型枚举 从 1∼n 这 n 个整数中随机选取任意多个,输出所有可能的选择方案。 填坑,从填1个坑到填n个坑。 坑可以随便填,比如第1个坑选了2之后,第2个坑可以填1(非升序),也可以填3(升序) #include<bits/stdc++.h> using namespace std; int n,st[20],vis[20]; void dfs(int u,int start,int k){ if(u == k+1){ for(int i = 1;i <= k;

2021-05-26 10:42:00 176

原创 2020第十一届蓝桥杯国赛C/C++b组

试题 A: 美丽的 2 本题总分:5 分 【问题描述】 小蓝特别喜欢 2,今年是公元 2020 年,他特别高兴。 他很好奇,在公元 1 年到公元 2020 年(包含)中,有多少个年份的数位中包含数字 2? 解:直接暴力就好, 答案:563 试题 B: 扩散 本题总分:5 分 【问题描述】 小蓝在一张无限大的特殊画布上作画。 这张画布可以看成一个方格图,每个格子可以用一个二维的整数坐标表示。 小蓝在画布上首先点了一下几个点:(0, 0), (2020, 11), (11, 14), (2000, 2000)。

2021-05-19 17:23:58 390

原创 快速排序

### 1-1-1快速排序 快排模板(以j为分界) 快排属于分治算法,分治算法都有三步: 分成子问题 递归处理子问题 子问题合并 #include<bits/stdc++.h> using namespace std; const int N=1e6+10; typedef long long ll; ll q[N];int n; void quick_sort(int l,int r){ //递归终止条件 if(l>=r) return; //分成子问题 将小

2021-05-09 21:36:42 126

原创 计算机网络传输过程

网络数据传输整个过程——数据封装 考点09:网络数据传输整个过程——数据传输 比喻:接力棒赛跑!穿衣服脱衣服 考点09:网络数据传输整个过程——数据解封 ...

2019-10-20 11:03:45 491

原创 网络体系结构OSI、TCP/IP

2019-10-20 10:52:46 273

原创 网络体系结构OSI,TCP/IP(网络工程师)

考点05:OSI/RM(开放系统互联参考模型)七层是应用层、表示层、会话层、传输层、网络层、数据链路层、物理层。 考点06:TCP/IP(因特网传输协议)四层是应用层、传输层、互联网层、网络接口层。 考点07:七层OSI和四层TCP/IP协议对比 考点08:七层协议各层实现功能如下表。 ...

2019-10-20 10:52:20 600

原创 计算机网络概论(网络工程师)

考点01:计算机网络是通过通信线路和通信设备连接的许多的分散独立工作的计算机系统遵从一定的协议用软件实现资源共享的系统。 考点02:计算机组成分为硬件、软件、协议三部分。 考点03:协议分为国际标准OS|/RM和公认标准TCP/iP ...

2019-10-20 10:39:05 254

原创 计算机网络分类(网络工程师)

考点04: (1)按分布范围:分为局域网、城域网、广域网。 (2)按拓扑结构:分为星型、环型、树型等。 (3)其他分类:公用网与专用网 通信网|SP与信息网ICP;校园网与企业网; 骨干网与接入网;有线网与无线网等。 ...

2019-10-20 10:32:20 340

原创 ajax初步学习

index.html文件 <!DOCTYPE html> <html> <head> <title>title</title> <meta charset="UTF-8"> </head> <body> <h2>点击的时候的发送请求报文 --不刷新页面</h2> &lt...

2019-09-30 18:56:22 170

空空如也

空空如也

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

TA关注的人

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