自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

王清欢的博客

不断输入,坚持输出,共同学习。

  • 博客(20)
  • 资源 (15)
  • 收藏
  • 关注

原创 LeetCode刷题笔记 标准模板库巧解算法题 前缀和

前缀和常用于解决 区域和检索 相关的题型​ 一维的前缀和,二维的积分图,都是把每个位置之前的一维线段或二维矩形预先存储,方便加速计算。如果需要对前缀和或积分图的值做寻址,则要存在哈希表里;如果要对每个位置记录前缀和或积分图的值,则可以储存到一维或二维数组里,也常常伴随着动态规划。303 区域和检索设计一个类,使得其能够快速查询给定整数数组 nums中,求数组从索引 i 到 j(i ≤ j)范围内元素的总和,包含 i、j两点。NumArray 类的调用样例:输入:[“NumArray”, “su

2021-10-26 11:00:00 3272

原创 LeetCode刷题笔记 标准模板库巧解算法题 多重集合

332 重新安排行程给定一个人坐过的一些飞机的起止机场,已知这个人从 JFK 起飞,那么这个人是按什么顺序飞的;如果存在多种可能性,返回字母序最小的那种。输入是一个二维字符串数组,表示多个起止机场对子;输出是一个一维字符串数组,表示飞行顺序。输入:tickets = [[“JFK”,“SFO”],[“JFK”,“ATL”],[“SFO”,“ATL”],[“ATL”,“JFK”],[“ATL”,“SFO”]]输出:[“JFK”,“ATL”,“JFK”,“SFO”,“ATL”,“SFO”]解释:另一

2021-10-25 16:00:00 3257

原创 LeetCode刷题笔记 标准模板库巧解算法题 哈希表

哈希表简介​ 哈希表,又称散列表,使用 O(n) 空间复杂度存储数据,通过哈希函数映射位置,从而实现近似 O(1) 时间复杂度的插入、查找、删除等操作。​ C++ 中的哈希集合为 unordered_set,可以查找元素是否在集合中。如果需要同时存储键和值,则需要用 unordered_map,可以用来统计频率,记录内容等等。如果元素有穷,并且范围不大,那么可以用一个固定大小的数组来存储或统计元素。例如我们需要统计一个字符串中所有字母的出现次数,则可以用一个长度为 26 的数组来进行统计,其哈希函数即为

2021-10-24 10:30:00 3437 2

原创 LeetCode刷题笔记 标准模板库巧解算法题 优先队列

优先队列简介​ 优先队列(priority queue)可以在 O(1) 时间内获得最大值,并且可以在 O(log n) 时间内取出最大值或插入任意值。​ 优先队列常常用堆(heap)来实现。堆是一个完全二叉树,其每个节点的值总是大于等于子节点的值。实际实现堆时,我们通常用一个数组而不是用指针建立一个树。这是因为堆是完全二叉树,所以用数组表示时,位置 i 的节点的父节点位置一定为 i/2,而它的两个子节点的位置又一定分别为 2i 和 2i+1。​ 以下是堆的实现方法,其中最核心的两个操作是上浮和下沉:

2021-10-23 18:00:00 3513

原创 LeetCode刷题笔记 标准模板库巧解算法题 单调栈

单调栈通过维持栈内值的单调递增(递减)性,在整体 O(n) 的时间内处理需要大小比较的问题。739 每日温度给定每天的温度,求对于每一天需要等几天才可以等到更暖和的一天。如果该天之后不存在更暖和的天气,则记为 0。输入是一个一维整数数组,输出是同样长度的整数数组,表示对于每天需要等待多少天。输入: temperatures = [73,74,75,71,69,72,76,73]输出: [1,1,4,2,1,1,0,0]解析:​ 本题可以通过维持一个单调递减的栈,表示每天的温度;而本题要求的

2021-10-22 14:45:00 3596

原创 LeetCode刷题笔记 标准模板库巧解算法题 栈和队列

232 用栈实现队列尝试使用栈(stack)来实现队列(queue)。实现 MyQueue 类:void push(int x) 将元素 x 推到队列的末尾int pop() 从队列的开头移除并返回元素int peek() 返回队列开头的元素boolean empty() 如果队列为空,返回 true ;否则,返回 false解析:​ 本题可以使用两个方向相反的栈实现一个队列如下图所示,其中箭头表示元素 pop 方向​ 使用两个栈的目的是:为了达到先入先出的效果,需要有一个栈用来翻转

2021-10-21 14:00:00 3536

原创 LeetCode刷题笔记 标准模板库巧解算法题 数组

C++ STL 容器​ 容器是可容纳各种数据类型(基本数据类型、对象等)的通用数据结构,都是类模板,分为三种类型:顺序容器:vector, deque, list关联容器:set, multiset, map, multimap容器适配器:stack, queue, priority_queue顺序容器:​ 顺序容器是非排序的,而且其元素的插入位置与元素自身的值无关,数组便于查找,链表便于操作。vector #include <vector> 一维动态数组:其元素在内存中是连

2021-10-20 11:00:17 3729

原创 Ubuntu中Docker虚拟网卡导致校园网访问网段冲突-解决记录

博主的系统是 Ubuntu 20.04.3 LTS,用于登录校园网的浏览器是 Google Chrome版本是 92.0.4515.159。在浏览器中输入校园网登录链接,结果一直返回的是 无法访问此网站,如下图所示:01 检查网络连接1.1 物理链接出现这种情况,我的第一反应就是可能是线缆或者路由器出了问题。首先,我插拔了几次主机的网线,没有解决问题,仍然弹出一样的报错页面。然后,检查了路由器连接情况,并重启了路由器,仍然没有解决。最后,我将接入本机的线缆插到一台 Windows 系统的主机上

2021-10-19 15:47:12 4813

原创 LeetCode刷题笔记 位运算巧解算法题 二进制特性

​ 利用二进制的一些特性,可以把位运算使用到更多问题上。例如,可以利用二进制和位运算输出一个数组的所有子集。假设有一个长度为 n 的数组,可以生成长度为 n 的所有二进制,1 表示选取该数字,0 表示不选取。这样就获得了 2^n 个子集。342 4的幂给定一个整数,判断它是否是 4 的次方。输入是一个整数,输出是一个布尔值,表示判断结果。输入:n = 16输出:true解析:​ 本题可以采用按位与运算简单实现判断数是否为4的幂。如果 n 是 4 的幂,那么 n 的二进制表示中有且仅有一个

2021-10-19 15:30:00 3755

转载 CSDN博文编辑 Markdown编辑器

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar

2021-10-19 15:02:15 3519

原创 LeetCode刷题笔记 位运算巧解算法题 妙用异或运算

​ 异或运算的特性十分重要 (1) x ^ 0000 = x; (2) x ^ 1111 = ~x; (3) x ^ x = 0,它的这些特性被广泛用于取返、去重等问题中。476 数字的补数给你一个 正 整数 num ,输出它的补数。补数是对该数的二进制表示取反。输入一个整数,输出一个整数表示原整数的补数输入:num = 5输出:2解释:5 的二进制表示为 101(没有前导零位),其补数为 010。所以你需要输出 2 。解析:​ 看到二进制位取返就可以想到异或运算x^1111 = ~x,

2021-10-17 16:00:00 3744

原创 LeetCode刷题笔记 位运算巧解算法题 位运算基础

​ 位运算是算法题里比较特殊的一种类型,它们利用二进制位运算的特性进行一些奇妙的优化和计算。常用的位运算符号包括:“∧” 按位异或、“&” 按位与、“|” 按位或、“∼” 取反、“<<” 算术左移和 “>>” 算术右移。以下是一些常见的位运算特性:异或与或x ^ 0000 = xx & 0000 = 0x | 0000 = xx ^ 1111 = ~xx & 1111 = xx | 1111 = 1111x ^ x

2021-10-15 15:29:46 3849

原创 LeetCode刷题笔记 算法中的数学问题 随机数问题

384 打乱数组给定一个数组,要求实现两个指令函数。第一个函数 shuffle() 可以随机打乱这个数组,第二个函数 reset() 可以恢复原来的顺序。输入是一个存有整数数字的数组,和一个包含指令函数名称的数组。输出是一个二维数组,表示每个指令生成的数组。输入: [“Solution”, “shuffle”, “reset”, “shuffle”] [[[1, 2, 3]], [], [], []]输出: [null, [3, 1, 2], [1, 2, 3], [1, 3, 2]]解释:Sol

2021-10-14 11:45:00 3468

原创 LeetCode刷题笔记 算法中的数学问题 数字处理问题

238 除自身以外数组的乘积给定一个长度为 n 的整数数组 nums,其中 n > 1,返回输出数组 output ,其中 output[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积。输入一个数组,输出一个数组,其中每个元素数值为除本身之外所有元素的乘积输入: [1,2,3,4]输出: [24,12,8,6]解析:​ 本题与135题分糖果相似,可以先从左到右计算当前元素左侧所有元素的乘积,然后从右到左计算当前元素右侧所有元素的乘积,再将两个元素乘积相乘得到最终结果。

2021-10-12 18:15:00 3063

原创 LeetCode刷题笔记 算法中的数学问题 众数问题

169 多数元素给定一个大小为 n 的数组,找到其中的多数元素。多数元素是指在数组中出现次数 大于 n / 2 的元素。输入一个一维数组,输出一个整数,表示数组中个数占多数的元素。输入:[3,2,3]输出:3解析:​ 采用哈希表是一种最为直接的方法,统计数组中每个元素出现的次数,然后找出频次最高的元素即可。class Solution {public: int majorityElement(vector<int>& nums) { unord

2021-10-11 15:00:00 3150

原创 LeetCode刷题笔记 算法中的数学问题 数字字符串求和问题

415 字符串相加给定两个由数字组成的字符串,求它们相加的结果。输入是两个字符串,输出是一个整数,表示输入的数字和。输入:num1 = “11”, num2 = “123”输出:“134”解析:​ 因为相加运算是从后往前进行的,所以可以先翻转字符串也可以从字符串尾部开始,再逐位计算。这种类型的题考察的是细节,如进位、位数差等等。​ 从字符串尾部开始计算和,如果扫描超出其中一个字符串长度则用0值代替,如果两个字符串计算完毕要检查是否还存在进位。字符串的数值计算通过与字符'0'比较得到。cl

2021-10-10 15:45:00 2904

原创 LeetCode刷题笔记 算法中的数学问题 进制转换问题

504 七进制数给定一个十进制整数,求它在七进制下的表示。输入一个整数,输出一个字符串,表示其七进制。输入: num = 100输出: “202”解释:100 的七进制表示法来源于 100 = 2 * 49 + 0 * 7 + 2 * 1。解析:​ 进制转换类型的题,通常是利用除法和取模(mod)来进行计算,同时也要注意一些细节,如负数和零。如果输出是数字类型而非字符串,则也需要考虑是否会超出整数上下界。class Solution {public: string conver

2021-10-09 13:15:00 2908

原创 LeetCode刷题笔记 算法中的数学问题 质数问题

​ 质数又称素数,指的是指在大于 1 的自然数中,除了 1 和它本身以外不再有其他因数的自然数。值得注意的是,每一个数都可以分解成质数的乘积。204 计数质数给定一个数字 n,求小于 n 的质数的个数。输入一个整数,输出也是一个整数,表示小于输入数的质数的个数。输入:n = 10输出:4解释:小于 10 的质数一共有 4 个, 它们是 2, 3, 5, 7 。解析:​ 埃拉托斯特尼筛法(Sieve of Eratosthenes,简称埃氏筛法)是非常常用的,判断一个整数是否是质数的方法。

2021-10-08 11:30:28 2923

原创 LeetCode刷题笔记 动态规划 股票交易问题

​ 股票交易类问题通常可以用动态规划来解决。对于稍微复杂一些的股票交易类问题,比如需要冷却时间或者交易费用,则可以用通过动态规划实现的状态机来解决。题目特点121 买卖股票的最佳时机只能买卖一次122 买卖股票的最佳时机 II可以买卖多次714 买卖股票的最佳时机含手续费可以买卖多次,每次都有手续费123 买卖股票的最佳时机 III最多买卖两次188 买卖股票的最佳时机 IV最多买卖 k 次309 最佳买卖股票时机含冷冻期可以买卖多次,但是卖出

2021-10-04 13:30:00 3494

原创 LeetCode刷题笔记 动态规划 字符串编辑问题

72 编辑距离​ 给定两个字符串,已知你可以删除、替换和插入任意字符串的任意字符,求最少编辑几步可以将两个字符串变成相同。​ 输入是两个字符串,输出是一个整数,表示最少的步骤。输入:word1 = “horse”, word2 = “ros”输出:3解释:horse -> rorse (将 ‘h’ 替换为 ‘r’)rorse -> rose (删除 ‘r’)rose -> ros (删除 ‘e’)解析:​ 本题与最长公共子序列类似,两个字符串的对比所以需要使用一个二

2021-10-01 12:45:00 3707

PyFlink 有状态流处理 + SkLearn 实现在线机器学习

本实例使用 PyFlink + Scikit-Learn 基于kafka输入的实时手写体数据,在线训练一个手写体识别机器学习模型,以及提供实时的手写体识别服务;并实现对模型训练过程的实时监控。

2022-02-21

PyFlink 有状态流处理实现实时排行榜

本实例使用 Flink 的有状态流处理和滑动窗口,实现实时点击量排行榜。 该实例统计过去 1 分钟内,点击量最高的男女用户各 10 名及其具体的点击数,同时每隔 1 秒(实时)更新统计结果,等到排行榜数据并将结果同步到 kafka 中。

2022-02-21

PyFlink 流处理 MySQL CDC方式实时备份

PyFlink 流处理 MySQL CDC方式实时备份

2022-02-21

PyFlink UDF 实时日志监控告警实现

本实例通过 Flink 结合 UDF 对系统上报的日志进行实时解析并生成告警,搭建实时监控告警系统

2022-02-21

PyFlink 词频统计完整代码

该实例的处理过程是通过 Flink 对文件存储系统里的数据进行离线批处理,统计指定文件下的单词数,并将统计结果存储到其他文件下。 该实例业务实现过程如下: - 首先使用 `filesystem` 作为连接器,按照指定的 `csv` 格式来批量地读取指定路径的文件或文件夹,以此创建源数据表。 - 然后,在 Flink 中执行批处理实例逻辑,完成批处理任务。 - 最后,使用 `filesystem` 连接器,将处理后结果写入目标文件或文件夹内,构建结果表。

2022-02-21

Apriori算法.rar

Apriori算法详解和Python实现代码

2021-05-09

CRF++训练命名实体识别模型源码.zip

使用 CRF++ 训练命名实体识别模型

2021-04-11

bilstm_crf.zip

基于 BiLSTM + CRF 的命名实体识别模型

2021-04-11

LearningSpringMVC.rar

手把手SpringMVC入门,内含PPT和项目源码,值得一看。

2021-01-09

数据库系统原理课后答案

数据库系统原理课后答案,详细解答的答案可供仔细参考。

2018-12-05

计算机网络(谢希仁)课后习题答案

计算机网络(谢希仁)第七版课后习题答案,含考研例题等内容

2018-12-05

Oracle+Navicat安装

包含Oracle安装包和Navicat for Oracle安装方法,一次性解决Oracle数据库安装问题

2018-11-08

八皇后问题CPP代码

经典的八皇后问题,堆栈的经典应用,使用C++实现源代码。

2018-11-06

机器学习实战 电子书+源码

《机器学习实战》 电子书+源码 , 机器学习力作,内含丰富源码供深入了解接起学习。

2018-06-19

数据结构李春葆第五版 练习题参考答案

数据结构李春葆第五版的习题解答参考答案,可以很详细的解答,有直接的代码。

2018-05-19

空空如也

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

TA关注的人

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