自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 经典动态规划:0-1 背包问题
原力计划

经典动态规划:0-1 背包问题 文章目录经典动态规划:0-1 背包问题一、题目描述二、动规标准套路三、题目描述四、解法分析五、优化 一、题目描述 就讨论最常说的 0-1 背包问题,简单描述一下吧: 给你一个可装载重量为W的背包和N个物品,每个物品有重量和价值两个属性。其中第i个物品的重量为wt[...

2020-03-31 23:53:10 639 0

原创 在线OJ项目(二)
原力计划

在线OJ项目(二) 文章目录在线OJ项目(二)一、回顾oj_server模块整体框架:二、封装日志模块1. 封装时间模块2. 封装日志等级三、获取单个题目 一、回顾oj_server模块整体框架: oj_server.cpp : #include <stdio.h> #include ...

2020-03-31 22:57:09 346 0

原创 在线OJ项目(一)
原力计划

在线OJ项目(一) 文章目录在线OJ项目(一)一、oj_server模块整体框架:二、提供获取所有的题目接口1. 把所有题目信息存储在数据结构当中2. 在工具类当中封装一个字符串切割函数3. 把存储所题目信息配置文件当中的内容读取到unordered_map当中4.获取所有题目信息的函数三、将所有...

2020-03-31 22:10:14 412 0

原创 在线OJ项目铺垫

在线OJ项目铺垫 文章目录在线OJ项目铺垫一.boost库的字符串切割函数二.谷歌的html模版库ctemplate三.序列化反序列化之jsoncpp四.在线OJ项目整体框架 一.boost库的字符串切割函数 二.谷歌的html模版库ctemplate 三.序列化反序列化之jsoncpp 四.在线...

2020-03-30 12:25:04 331 0

原创 右值引用&线程库
原力计划

右值引用&线程库 文章目录右值引用&线程库

2020-03-29 23:02:56 394 0

原创 C++98&C++11的区别
原力计划

C++98&C++11的区别 文章目录C++98&C++11的区别1. C++11简介2. 自动类型推导auto3. 列表初始化4. 变量类型推导5. 范围for循环6. 返回类型后置语法7. final和override8. =default和=delete9. lambda表达...

2020-03-29 23:01:50 453 0

原创 位图&布隆过滤器&海量数据处理
原力计划

位图&布隆过滤器&海量数据处理 文章目录位图&布隆过滤器&海量数据处理一、位图二、布隆过滤器三、海量数据处理 一、位图 1. 位图概念: 所谓位图,就是用每一位来存放某种状态,适用于海量数据,数据无重复的场景。通常是用来判断某个数据存不存在的 例: 给40亿个不重复...

2020-03-29 15:48:48 355 0

原创 模拟实现map&set

模拟实现map&set 文章目录模拟实现map&set1. map的特性2. map的模板参数说明3. map的构造4. map的迭代器5. map的容量与元素访问6. map中元素的修改7. map的模拟实现8. set的模拟实现 1. map的特性 1. map是关联容器,它按...

2020-03-29 14:06:24 297 0

原创 模拟实现unordered_map&unordered_set
原力计划

模拟实现unordered_map&unordered_set 文章目录模拟实现unordered_map&unordered_set1. std::unordered_map 的定义与特性2. 构造 std::unordered_map:3. 赋值操作4. 迭代器操作5. 容量操...

2020-03-29 13:22:10 334 0

原创 MYSQL视图&用户管理
原力计划

视图 文章目录视图1. 基本使用2. 视图规则和限制用户管理1. 用户2. 数据库的权限 视图是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。视图的数据变化会影响到基表,基表的数据变化也会影响到视图 1. 基本使用 创建视图 create view 视图名 ...

2020-03-27 21:27:18 375 0

原创 MYSQL事务管理
原力计划

事务管理 事务就是一组DML语句组成,这些语句在逻辑上存在相关性,这一组DML语句要么全部成功,要么全部失败,是一个整体。MySQL提供一种机制,保证我们达到这样的效果。事务还规定不同的客户端看到的数据是不相同的。 文章目录事务管理1. 事务基本操作2. 事务操作注意事项3. 事务的隔离级别4....

2020-03-27 21:02:07 352 0

原创 MySQL的索引特性
原力计划

MySQL的索引特性 文章目录MySQL的索引特性1. 基本原理2. 创建索引2.1 创建主键索引2.2 唯一索引的创建2.3 普通索引的创建2.3 全文索引的创建3. 查询索引4. 删除索引5. 索引创建原则 索引:提高数据库的性能,索引是物美价廉的东西了。不用加内存,不用改程序,不用调sql,...

2020-03-27 18:24:57 329 0

原创 MySQL的内连和外连

MySQL的内连和外连 文章目录MySQL的内连和外连1. 内连接2. 外连接 表的连接分为内连和外连 1. 内连接 内连接实际上就是利用where子句对两种表形成的笛卡儿积进行筛选,前面学习的查询都是内连接,也是在开发过程中使用的最多的连接查询。 语法: select 字段 from 表1 in...

2020-03-27 17:13:13 327 0

原创 MySQL重复查询
原力计划

MySQL查复查询 文章目录MySQL查复查询1. 基本查询回顾2. 多表查询4. 子查询 1. 基本查询回顾 查询工资高于500或岗位为MANAGER的雇员,同时还要满足他们的姓名首字母为大写的J select * from EMP where (sal>500 or job=...

2020-03-27 16:57:23 363 0

原创 MySQL的内置函数
原力计划

MySQL的内置函数 文章目录MySQL的内置函数1. 日期函数2. 字符串函数3. 数学函数4. 其它函数 1. 日期函数 获得年月日: select current_date(); +----------------+ | current_date() | +--------------...

2020-03-27 15:42:00 261 0

原创 MySQL的基本查询(二)
原力计划

MySQL的基本查询(二) 文章目录MySQL的基本查询(二)3. Update4. Delete5. 插入查询结果6. 聚合函数7. group by子句的使用 3. Update 语法: UPDATE table_name SET column = expr [, column = expr ...

2020-03-27 15:16:11 282 0

原创 MySQL的基本查询(一)
原力计划

表的增删改查 文章目录表的增删改查1. Create2. Retrieve2.1 SELECT 列2.2 WHERE 条件2.3 结果排序2.4 筛选分页结果 1. Create 语法: INSERT [INTO] table_name [(column [, column] ...)] VALU...

2020-03-27 15:00:58 282 0

原创 MySQL表的约束
原力计划

MySQL表的约束 文章目录MySQL表的约束1. 空属性2. 默认值3. 列描述4. zerofill5. 主键6. 自增长7. 唯一键8. 外键9. 综合案例 真正约束字段的是数据类型,但是数据类型约束很单一,需要有一些额外的约束,更好的保证数据的合法性,从业务逻辑角度保证数据的正确性。 比如...

2020-03-27 13:42:38 270 0

原创 MySQL的数据类型
原力计划

MySQL的数据类型 文章目录MySQL的数据类型1. 数据类型分类2. 数值类型3. 字符串类型 1. 数据类型分类 2. 数值类型 1. tinyint类型: 数值越界测试: mysql> create table tt1(num tinyint); Query OK, 0 rows...

2020-03-26 21:51:46 376 0

原创 MySQL表的操作
原力计划

MySQL表的操作 文章目录MySQL表的操作1. 创建表2. 创建表案例3. 查看表结构4. 修改表5. 删除表 1. 创建表 语法: CREATE TABLE table_name ( field1 datatype, field2 datatype, field3 datatype ) ch...

2020-03-26 21:06:38 310 0

原创 MySQL库的操作
原力计划

MySQL库的操作 文章目录MySQL库的操作1. 创建数据库2. 创建数据库案例3. 字符集和校验规则4. 操纵数据库 1. 创建数据库 语法: CREATE DATABASE [IF NOT EXISTS] db_name [create_specification, [create_sp...

2020-03-25 22:12:22 328 0

原创 红黑树
原力计划

红黑树的模拟实现 文章目录红黑树的模拟实现1. 红黑树的概念2. 红黑树的性质3. 红黑树节点的定义4 .红黑树结构5 .红黑树的插入操作6.代码:7. 红黑树的验证8. 红黑树的删除 本篇博客当中使用了二叉搜索树和AVL树的相关性质: 二叉搜索树 AVL树 1. 红黑树的概念 红黑树,是一种 二...

2020-03-21 16:53:00 338 0

原创 你真的会求素数吗?
原力计划

你真的会求素数吗? 文章目录你真的会求素数吗?炼气期金丹期大乘期飞升期 素数的定义看起来很简单,如果一个数如果只能被 1 和它本身整除,那么这个数就是素数。 炼气期 不要觉得素数的定义简单,恐怕没多少人真的能把素数相关的算法写得高效。比如让你写这样一个函数: // 返回区间 [2, n) 中有几个...

2020-03-18 20:36:22 351 0

原创 递归详解
原力计划

递归详解 文章目录递归详解为什么要写递归写递归的技巧分治算法 首先说明一个问题,简单阐述一下递归,分治算法,动态规划,贪心算法这几个东西的区别和联系,心里有个印象就好。 递归是一种编程技巧,一种解决问题的思维方式;分治算法和动态规划很大程度上是递归思想基础上的(虽然动态规划的最终版本大都不是递归了...

2020-03-18 20:12:41 364 0

原创 阿里云linux上安装与配置Mysql
原力计划

记录下在阿里云linux上安装与配置Mysql 环境:阿里云ECS服务器,系统为centos7.2 用户:root 文章目录删除原来的数据库:下载与安装MySQL:关于登录MySQL:配置远程登录: 删除原来的数据库: centos7中默认安装了数据库MariaDB,如果直接安装MySQL的话,会...

2020-03-15 08:47:44 283 0

原创 mysql的基本操作
原力计划

文章目录Shell中mysql的基本操作mysql的安装及运行安装mysql启动mariadb服务mariadb监听的端口只允许本地连接,阻断所有来自网络的连接mariadb的初始化设置mysql的登陆密码进入mysql的基本使用操作用户和访问权限的操作忘记mysql用户密码时,怎么找回?mysq...

2020-03-12 22:03:46 312 0

原创 洗牌算法
原力计划

洗牌算法 文章目录洗牌算法一、洗牌算法⼆、蒙特卡罗⽅法验证正确性 我知道大家会各种花式排序算法,但是如果叫你打乱一个数组,你是否能做到胸有成竹?即便你拍脑袋想出一个算法,怎么证明你的算法就是正确的呢?乱序算法不像排序算法,结果唯一可以很容易检验,因为「乱」可以有很多种,你怎么能证明你的算法是「真的...

2020-03-12 18:43:38 351 0

原创 信封嵌套问题
原力计划

信封嵌套问题 文章目录信封嵌套问题一、题目概述二、解法三、总结 一、题目概述 给定一些标记了宽度和高度的信封,宽度和高度以整数对形式 (w, h) 出现。当另一个信封的宽度和高度都比这个信封大的时候,这个信封就可以放进另一个信封里,如同俄罗斯套娃一样。 请计算最多能有多少个信封能组成一组“俄罗斯套...

2020-03-12 17:19:04 552 0

原创 基于Huffman算法和LZ77算法的文件压缩的改进方向

基于Huffman算法和LZ77算法的文件压缩(八) 到这里已经简单实现基于Huffman算法和LZ77算法的文件压缩, GitHub源码:点我 根据基于Huffman算法和LZ77算法的文件压缩(七)已经介绍当前项目的缺陷及改进方法。 那么本文只讲思想,不实现。 一、范式Huffman树 范式h...

2020-03-11 12:47:44 404 0

原创 基于LZ77算法的文件解压缩&项目缺陷分析

基于Huffman算法和LZ77算法的文件压缩(七) 基于Huffman算法和LZ77算法的文件压缩(六)已经讲解完文件压缩的过程,本文讲解文件解压缩的过程和大文件处理方式 一、解压缩的流程 LZ77的解压缩非常简单: 从文件1中读取标记,并对该标记进行分析 如果当前标记是0,表示原字符,从文件...

2020-03-11 12:11:23 416 0

原创 基于LZ77算法的文件压缩收尾

基于Huffman算法和LZ77算法的文件压缩(六) 前面基于Huffman算法和LZ77算法的文件压缩(四) 基于Huffman算法和LZ77算法的文件压缩(五) 已经讲解LZ77到基本原理和文件压缩到过程。 本文开始讲解文件的解压缩过程。 ...

2020-03-11 00:06:42 373 0

原创 基于LZ77算法的文件压缩

基于Huffman算法和LZ77算法的文件压缩(五) 基于Huffman算法和LZ77算法的文件压缩(四)已经讲解LZ77算法到基本原理和压缩过程。 本文就开始讲解文件到压缩过程 ...

2020-03-10 19:45:58 329 0

原创 基于LZ77算法的文件压缩铺垫
原力计划

基于Huffman算法和LZ77算法的文件压缩(四) 本文开始讲解LZ77算法,会用到哈希,哈希原理详解 我们在基于Huffman算法和LZ77算法的文件压缩(一)当中总体介绍了Huffman算法和LZ77算法的原理,本文讲解基于LZ77算法的文件压缩和解压缩 一、 什么是LZ77 1977年,两...

2020-03-10 13:29:21 361 0

原创 哈希原理

哈希原理 C++11提供的unordered系列的容器之所以在查找方面能够达到O(1)O(1)O(1)的复杂度,是因为其底层使用了哈希的结构 一、哈希的概念: 顺序结构以及平衡树中,元素关键码与其存储位置之间没有对应的关系,因此在查找一个元素时,必须要经过关键码的多次比较。顺序查找时间复杂度为O(...

2020-03-10 12:20:03 1225 2

原创 基于Huffman算法的文件解压缩

基于Huffman算法和LZ77算法的文件压缩(三) 前面基于Huffman算法和LZ77算法的文件压缩(二)解释来文件压缩的整个过程,接下来讲解文件解压缩的过程 一、 利用huffman编码对源文件进行解压缩 解压缩的整个流程: 从压缩文件中获取源文件的后缀 从压缩文件中获取字符次数的总行数 获...

2020-03-09 22:22:28 489 0

原创 基于Huffman算法的文件压缩

基于Huffman算法和LZ77算法的文件压缩(二) 根据前面基于Huffman算法和LZ77算法的文件压缩(一)的铺垫,先来看基于Huffman思想的文件压缩的实现过程。 一、 利用huffman编码对源文件进行压缩 压缩的整个流程: 统计源文件中每个字符出现的次数 以字符出现的次数为权值创建h...

2020-03-09 19:01:25 453 1

原创 文件压缩项目铺垫

基于Huffman的文件压缩(一) 1. 数据压缩的概念 数据压缩是指 在不丢失有用信息的前提下,缩减数据量以减少存储空间,提高其传输、存储和处理效率,或按照一定的算法对数据进行重新组织,减少数据的冗余和存储的空间 的一种技术方法 2. 为什么需要压缩 紧缩数据存储容量,减少存储空间 可以提高数...

2020-03-09 14:26:50 438 0

原创 区间调度之区间交集问题

区间调度之区间交集问题 区间调度问题共写了3片博客,前两篇重叠区间和区间合并分别讲了区间的最大不相交子集和重叠区间的合并,今天再写一个算法,可以快速找出两组区间的交集。 一、解题思路 解决区间问题的思路一般是先排序,以便操作,不过题目说已经排好序了,那么可以用两个索引指针在 A 和 B 中游走,...

2020-03-07 16:26:38 336 0

原创 区间调度之区间合并问题

区间调度之区间合并问题 还是先看一道题: 一、解题思路 一个区间可以表示为 [start, end],区间重叠区间调度问题,需要按 end 排序,以便满足贪心选择性质。而对于区间合并问题,其实按 end 和 start 排序都可以,不过为了清晰起见,我们选择按 start 排序。 显然,对于几...

2020-03-07 16:11:57 342 0

原创 FloodFill算法详解及应用

FloodFill算法详解及应用 啥是 FloodFill 算法呢, 最直接的一个应用就是「颜色填充」,就是 Windows 绘画本中 那个小油漆桶的标志,可以把一块被圈起来的区域全部染色。 这种算法思想还在许多其他地方有应用。比如说扫雷游戏,有时候你点一个方格, 会一下子展开一片区域,这个展...

2020-03-07 11:56:34 325 0

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