自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 AcWing《Linux基础课》第8讲 租云服务器及配环境

8 租云服务器及配环境8.1 介绍云平台的作用存放docker容器,让计算在云端进行获得公网IP地址,让别人能访问到我们的服务任选一个云平台,按如下方式配置1核 2GB(后期可以动态扩容,前期配置低一些没关系)网络带宽采用按量付费,最大带宽拉满即可(费用取决于用量,与最大带宽无关)系统版本:Ubuntu 20.04 LTS(推荐用统一版本,避免后期出现配置不兼容的问题)租到的服务器毛坯框架(DJango)Thrift服务(MySQL等)socket方式:IP:P

2022-03-02 14:52:18 532

原创 AcWing《Linux基础课》第7讲 管道、环境变量与常用命令

7 管道、环境变量与常用命令7.1 管道类似文件重定向,可以将前一个命令的stdout重定向到下一个命令的stdin要点仅处理stdout,忽略stderr管道右边的命令必须能接收stdin,例如rm无法接收stdin多个管道命令可以串联与文件重定向的区别文件重定向的左边为命令,右边为文件管道左右两边都是命令,左边必须有stdout,右边必须有stdin例:统计当前目录下的所有Python文件的总行数find . -name '*.py' | xargs cat | wc

2022-03-02 14:51:44 414

原创 AcWing《Linux基础课》第6讲 Thrift

6 Thrift6.1 引言Thrift是一个跨语言的RPC框架(Remote Procedure Call),用于服务之间的通信。它把过程封装到一个函数中,它可以让不同编程语言无缝结合,使得调用者像调用本地服务一样方便。Thrift优势开发速度快:用户只需编写IDL,编译器自动生成服务端骨架和客户端桩(Stubs)接口维护简单:只需维护IDL学习成本低:面向对象风格支持多种语言:Java、Python、C++等稳定且广泛使用:Hadoop6.2 架构Thrift自顶向下可分为5层

2022-03-02 14:51:09 915

原创 AcWing《Linux基础课》第5讲 Git

5 Git5.1 基本概念常用的远程仓库有GitHub和GitLab,此外,y总还提供了基于GitLab的AcGit。工作区:仓库的目录,独立于各个分支。暂存区:数据暂时存放的区域,可看做工作区写入版本库之前的缓冲区,它独立于各个分支。版本库:存放所有已经提交到本地仓库的代码版本。版本结构:树结构,树中每个结点代表一个代码版本。5.2 本地命令5.2.1 配置git账户配置文件位于~/.gitconfig中git config --global user.name xxx # 全局用户

2022-03-02 14:48:35 558

原创 AcWing《Linux基础课》第4讲 SSH

4 SSH在AC终端获取SSH服务器homework 4 getinfo通过SSH登录远程服务器4.1 SSH登录假设user是用户名,hostname是IP地址或域名,则按如下方式登录ssh user@hostname首次登录会提示之前未登录过这台服务器,输入yes或直接回车会把该服务器的信息记录到~/.ssh/known_hosts中,然后再输入密码就能登录到该服务器。若要退出,可用命令exitSSH默认端口为22,可显示声明服务器端口号ssh user@hostname -p 2

2022-03-02 14:47:53 212

原创 AcWing《Linux基础课》第3讲 shell语法

3 shell语法3.1 概论终端可以看做逐条执行的shell脚本,Linux默认使用bash,脚本文件第一行必须为#! /bin/bash可通过两种方式执行shell脚本解释器执行:bash xxx.sh作为可执行文件执行添加执行权限chmod +x xxx.sh执行./xxx.sh3.2 注释**单行注释:**类似python,用#注释多行注释::<<EOF...EOF其中EOF可替换成任意字符串,例如abc3.3 变量定义变量定义不需要$,

2022-03-02 14:46:41 162

原创 AcWing《Linux基础课》第2讲 tmux和vim

AcWing《Linux基础课》第2讲笔记

2022-03-02 14:43:02 388

原创 AcWing《Linux基础课》第1讲 常用文件管理命令

AcWing《Linux基础课》第1讲笔记

2022-03-02 14:41:14 229

原创 AcWing《PAT甲级辅导课》第9章 哈希表

第9章 哈希表1048. Find Coins笔记哈希表存储每读入一个数x时,在哈希表中查找target - x是否存在,如果存在则检查是否需要更新全局最优解#include <iostream>#include <unordered_set>using namespace std;const int INF = 1010;unordered_set<int> h;int main() { int n, target; cin

2021-12-09 09:58:05 361

原创 AcWing《PAT甲级辅导课》第8章 动态规划

第8章 动态规划1007. Maximum Subsequence Sum笔记f(i)f(i)f(i)定义为所有以iii为右端点连续子序列的最大连续子序列和,状态转移方程为f(i)=max(w(i),f(i−1)+w(i))f(i)=max(w(i), f(i-1) + w(i))f(i)=max(w(i),f(i−1)+w(i))重新选区间,对应w(i)w(i)w(i)在原区间上继续选,对应f(i−1)+w(i)f(i-1) + w(i)f(i−1)+w(i)DP优化f(i)=m

2021-12-08 16:16:00 199

原创 AcWing《PAT甲级辅导课》第7章 数学

第7章 数学1049. Counting Ones笔记可参考《算法基础课》数位统计DP的思路,这题只是那题的特例#include <iostream>#include <cmath>#include <vector>using namespace std;const int N = 13; // 位数int get(int l, int r, vector<int> num) { int res = 0;

2021-12-07 16:38:34 568

原创 AcWing《PAT甲级辅导课》第6章 图

第6章 图1003. Emergency笔记Dijkstra知识点用途Dijkstra是最短路径算法,可求某个点到其它所有点的最小距离适用范围边权非负有向图和无向图都可以(不一定是简单图,可以带有重边或自环)思路把起点到其它点的最短距离置为无穷大,起点到自身的最短距离置为0选取最短距离最小的顶点uuu,并标记已选用顶点uuu更新其它顶点的最小距离,dist(u)+d(u,v)<dist(v)dist(u) + d(u, v) < dis

2021-12-04 21:57:04 608

原创 AcWing《PAT甲级辅导课》第5章 树

第5章 树1004. Counting Leaves笔记统计树每层叶子的个数,可用DFS或BFS在DFS加入参数depth,可表示当前层号,但还需要全局变量记录树的层数可用邻接表存储树#include <iostream>#include <cstring>using namespace std;const int N = 110, M = 210, ROOT = 1;int n, m;int h[N], e[M], ne[M], idx;int cnt

2021-12-01 22:26:50 1176

原创 AcWing《PAT甲级辅导课》第4章 排序

第4章 排序1012. The Best Rank笔记按学科存储各个学生成绩,同时也按学号存储各个学生的成绩。排序后,再用二分查找学生某科成绩的排名注意是从大到小排序,需要用sort(a.begin(), a.end(), greater<int>())可用哈希表加快学生的查找,二分加快成绩的查找实现预处理查询结果,也可加快查找#include <iostream>#include <algorithm>#include <vector&gt

2021-11-16 11:13:00 508

原创 AcWing《PAT甲级辅导课》第3章 进位制

第3章 进位制1010. Radix笔记全部化成十进制再比较可用秦九韶算法计算十进制数(递推计算)最大值是zzzzzzzzzz<101610^{16}1016,可用long long保存,但要注意尽可能都用long longlong long作乘法会溢出,需要先转成double类型(double)(a * b)和(double) a * b不等价,前者先计算乘法,可能会溢出最低开始查找的进制数可从数本身确定,但要注意+1最高开始查找的进制数可能是目标本身,但至少是36起#in

2021-11-12 15:57:20 414

原创 AcWing《PAT甲级辅导课》第2章 高精度

第2章 高精度1002. A+B for Polynomials笔记类似高精度加法,但无需考虑进位问题注意系数用double类型,指数可选用int类型#include <iostream>using namespace std;const int N = 1010;double a[N], b[N], c[N];int read_data(double x[N]) { int k, n; double coef; cin >> k;

2021-11-10 16:41:51 422

原创 AcWing《PAT甲级辅导课》第1章 字符串处理

第1章 字符串处理1001. A+B Format笔记用字符串处理用to_string()把int转成字符串string字符串头插res = ch + res;#include<iostream>using namespace std;int main() { int a, b; cin >> a >> b; string c = to_string(a + b); string res; for (

2021-10-27 22:12:27 578

原创 Acwing《算法基础课》第7章 时空复杂度分析

Acwing《算法基础课》第7章 时空复杂度分析文章目录Acwing《算法基础课》第7章 时空复杂度分析一般ACM或者笔试题的时间限制是111秒或222秒C++一般111s能计算10710^7107~10810^8108次,在这种情况下,C++代码中的操作次数控制在 10710^7107为最佳在不同数据范围下,代码的时间复杂度和算法的选择技巧如下:n≤30n\le 30n≤30,指数级别dfs+剪枝状态压缩dpn≤100n \le 100n≤100,O(n3)O(n^3)O(n3)

2020-10-07 12:17:53 259

原创 Acwing《算法基础课》第6章 贪心

Acwing《算法基础课》第6章 贪心文章目录Acwing《算法基础课》第6章 贪心区间区间选点最大不相交区间数量区间分组区间覆盖Hoffman树排队打水货仓选址耍杂技的牛区间区间选点给定NNN个闭区间[ai,bi][a_i,b_i][ai​,bi​],请你在数轴上选择尽量少的点,使得每个区间内至少包含一个选出的点,输出选择的点的最小数量。思路将每个区间按照右端点从小到大进行排序ed值初始化为无穷小,从前往后枚举区间如果遍历到的区间的左端点大于记忆区间的右端点(放有点),则把记忆区间更新

2020-10-07 12:16:17 365

原创 Acwing《算法基础课》第5章 动态规划

Acwing《算法基础课》第5章 动态规划文章目录Acwing《算法基础课》第5章 动态规划背包问题01背包问题完全背包问题多重背包问题分组背包问题线性DP数字三角形最长上升子序列最长公共子序列最短编辑距离区间DP计数类DP完全背包解法其它算法数位统计DP状态压缩DP蒙德里安的梦想最短Hamilton路径树形DP记忆化搜索背包问题01背包问题nnn个物品,每个物品的体积是viv_ivi​,价值是wiw_iwi​,背包的容量是mmm若每个物品最多只能装一个,且不能超过背包容量,则背包的最大价值是

2020-10-07 12:14:13 577

原创 Acwing《算法基础课》第4章 数学知识

Acwing《算法基础课》第4章 数学知识文章目录Acwing《算法基础课》第4章 数学知识质数判断质数分解质因数筛质数朴素筛法埃氏筛法线性筛法约数求所有约数约数个数定理约数之和定理例子:12=22×3112=2^2\times3^112=22×31,121212的约数有1,2,3,4,6,121, 2, 3, 4, 6, 121,2,3,4,6,12,约数之和为282828,根据公式计算同样是(20+21+22)×(30+31)=28(2^0+2^1+2^2)\times(3^0+3^1)=28(20+

2020-10-07 12:00:30 453 1

原创 Acwing《算法基础课》第3章 搜索与图论

Acwing《算法基础课》第3章 搜索与图论文章目录Acwing《算法基础课》第3章 搜索与图论深度优先遍历DFS宽度优先搜索BFS拓扑排序dijkstra算法朴素dijkstra算法堆优化dijkstra算法Bellman-Ford朴素Bellman-Ford算法队列优化Bellman-Ford算法——SPFA算法Floyd算法Prim算法Kruskal算法染色法匈牙利算法深度优先遍历DFS模板:bool st[N]; // 标记是否用过int h[N], ne[N];int dfs

2020-10-07 11:56:32 557 2

原创 Acwing《算法基础课》第2章 数据结构

Acwing《算法基础课》第2章 数据结构文章目录Acwing《算法基础课》第2章 数据结构单链表双链表模拟栈模拟队列普通队列循环队列单调栈单调队列KMPTrie树并查集朴素并查集维护size的并查集维护到祖宗节点距离的并查集堆哈希表字符串哈希STL模板单链表模板:int e[N], ne[N]; // 链表元素及下个结点的地址int head; // 头结点地址int idx; // 可用位置/** 创建含头结点的单链表 */void init() { head = 0;

2020-10-06 23:29:24 307

原创 Acwing《算法基础课》第1章 算法基础

Acwing《算法基础课》第1章 算法基础文章目录Acwing《算法基础课》第1章 算法基础排序快速排序归并排序二分整数二分浮点数二分高精度计算大整数存储大整数比较高精度加法高精度减法高精度乘法高精度除法前缀和一维前缀和二维前缀和差分一维差分二维差分双指针算法位运算离散化区间合并排序快速排序主要思想:确定分界点:x = a[l]x = a[r]q = a[(l + r) / 2]调整范围:左边<=x右边>x递归处理左边和右边模板:void quick

2020-10-06 23:21:18 1216

原创 Acwing《语法基础课》笔记

Acwing《语法基础课》笔记文章目录Acwing《语法基础课》笔记第1讲:变量、输入输出、表达式与顺序语句第2讲 `scanf`/`printf`语法及判断语句第3讲 循环语句第4讲 数组第5讲 字符串第6讲 函数第7讲 结构体、类、指针与引用第8讲 STL容器、位运算与常用库函数数组类容器有序对容器algorithm库难题第1讲:变量、输入输出、表达式与顺序语句常用头文件:iostream包括cin、cout、scanf、printfcstdin包括scanf、printfcmath万

2020-10-06 23:12:13 3626

原创 《Java语言程序设计(基础篇)原书第10版》第1章 计算机、程序和Java概述 复习题答案

《Java语言程序设计(基础篇)原书第10版》第1章 计算机、程序和Java概述 复习题答案1.1 What are hardware and software?A computer is an electronic device that stores and processes data. A computer includes both hardware and software.In...

2020-02-07 23:35:53 6851

空空如也

空空如也

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

TA关注的人

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