Mrli
别装作很努力,
因为结局不会陪你演戏。
Contacts:
QQ博客园

Mr.li's Blog

Welcome to my Blog!
重拾Java笔记
重拾Java笔记 工作主要用Java, 因此开始准备Java基础再补补。根据小猴子1024-JAVA基础整理笔记 命名规范: 没怎么写, 所以一直忘, 这次写在最前面, 便于翻阅。 大驼峰命名(UpperCamelCase):每个单词的第一个字母大写,其他字母小写。e.g.MyException 小驼峰命名(lowerCamelCase):如果仅有一个单词,那么所有字母全部小写,如果是两个及以上的单词组成的名称,那么除了第一个单词是全部小写外,其他都是的首字母大写,其他字母小写。e.g.getMyName 1.1 包的命名 包的命名由全部小写的单词组成。一般使用公司的域名的作为自 ...

剑指Offer_leetcode刷题记录
由于临近春招末期,时间比较紧,就不记录思考过程了,直接贴AC代码。以后有空补上 代码大多用C++,仅是过而已,没有进行优化。 面试题03. 数组中重复的数字 12345678910111213141516class Solution {public: int findRepeatNumber(vector<int>& nums) { std::ios::sync_with_stdio(false); int size = nums.size(); if (size <0 ) return 0; ...

IDEA配置——自定义快捷键、生成注释
IDEA配置——自定义快捷键、生成注释 以前因为上JAVA课,还是不常用Java, 所以安装了个Eclipse, 但是现在要经常使用java的话, 感觉还是IDEA的支持做的可能更加到位一点 自动补全提示: 菜单栏Settings(快捷键ctrl + alt + s)->Editr->General->Code Completion-> 取消选中"Match case" IDEA自定义快捷键 功能 英文描述 快捷键 回退上一次光标位置 back Ctrl +alt + ← 前进到下一次光标位置 forward Ctrl + ...

VsCode环境、配置Latex(texLive)
写在前面: 除了配置VsCode以外, 我还配置了Sublime,一开始是不想用SumatraPDF,以为能省的。事实上,Vscode也确实提供了三种方法:在web browser、编辑器tab、外部PDF阅读器,共三种办法。个人感觉tab界面太小、浏览器查看毕竟还是没有PDF舒服,最后都体验下来还是选择了外部阅读器,而且SumatraPDF支持正向、反向搜索,挺香的。当然,还有种做法是把PDF编译出来以后,再用日常使用的阅读器打开PDF阅读也是可以的,我个人平时用福昕PDF阅读器会多一点 SumatraPDF阅读器是个非常轻量级的PDF阅读器,开源轻巧,免安装,共14.6MB。要想配套使用 ...

华为春招4.29笔试题
4.29三道笔试题: 做了其他大厂的笔试题后,好像确实华为的稍微简单点。只不过其他的笔试题是有模拟题的,华为的这三道题基本上都是DFS A: 带有重复元素的全排列问题,求不重复的排列数。以下做法50%, TLE了。正确做法是直接用公式计算 123456789101112131415161718192021222324252627282930'''@Author: Mrli@Date: 2020-04-29 20:23:34@LastEditTime: 2020-04-29 21:24:40@Description: '''s = input().strip()ans = list( ...

算法笔记Codeup题解
100000612 - 《算法笔记》9.3小节——数据结构专题(2)->树的遍历 问题 A: 树查找 1234567891011121314151617181920212223242526272829303132333435363738394041#include <bits/stdc++.h>using namespace std;const int MAXN = 1e3 + 5;int arr[MAXN];typedef long long ll;ll fast_pow(int d, int base){ int n = d; ll res = ...

PAT冲冲冲——乙级
PAT冲冲冲——乙级 PAT甲级练习题 ——PAT (Advanced Level) Practice PAT甲级(Advanced Level)真题 柳婼 の blog经验 saquarius’s blog PAT甲级题目及分类总结 pat甲级题解目录 ▲报名费256,可以刷牛客网的题来获得-50的优惠券,该练习场下的所有题目只要通过都算 乙级练习题 NowCoder数列 没想到第二题就是考了个数据范围,由于0≤n≤1000000,所以F(n)必然比long long大,而判断3的倍数可表示为===> F(n) % 3 —> (F(n-1)%3 + F(n-2)%3 ...

MinMax-极小极大算法——2048
MinMax-极小极大算法——2048 算法介绍 MinMax 大家在编程的时候应该或多或少都接触到过这样的写法:min(max(xxx,yyy)),MinMax算法的表达形式就是如此,不过其中的Min和Max都是具有对应含义的。 一般解决博弈类问题的自然想法是将格局组织成一棵),树的每一个节点表示一种格局,而父子关系表示由父格局经过一步可以到达子格局。Minimax也不例外,它通过对以当前格局为根的格局树搜索来确定下一步的选择。而一切格局树搜索算法的核心都是对每个格局价值的评价。Minimax算法基于以下朴素思想确定格局价值: Minimax是一种悲观算法,即假设对手每一步都会将 ...

sshpass——shell脚本实现SSH连接其他主机并执行终端命令
sshpass ssh登陆不能在命令行中指定密码。sshpass的出现,解决了这一问题。即sshpass可以用于非交互SSH的密码验证,一般用在sh脚本中,无须再次输入密码。 sshpass允许用-p参数指定明文密码,然后直接登录远程服务器。(支持密码从命令行、文件、环境变量中读取) 1.安装sudo apt install sshpass 2.使用说明 12345678910111213141516171819# -p 直接指定密码sshpass -p '123456' ssh user_name@host_ip# -f: -f filename #后跟保存密码的文件名,密码是文件内容 ...

Hungarian algorithm匈牙利算法
Hungarian algorithm匈牙利算法 主要用来解决不带权的分配问题,O(V*E) 首先,需要明白二分图(又名二部图)的概念 二分图Bipartite Graph 二分图是图论中一种特殊模型。设G=(V,E)是一个无向图(当且仅当图中不存在长度为奇数的环。),如果顶点V可分割为两个互不相交的子集(A,B),并且图中的每条边(i,j)所关联的两个顶点i和j分别属于这两个不同的顶点集(i in A,j in B),则称图G为一个二分图。 注意:如果一图是二分图,那么它一定没有奇环。如果一图没有奇环的话,那么它可以是二分图。(没有奇环是二分图的必要条件) ▲通常被用来解决分配、匹配 ...

树莓派初始化操作
安装系统镜像: 官网下载镜像,解压下载好的Zip文件会得到.img镜像文件。下载win32DiskImage 方式: SSH VNC Xrdp 系统设置: $ sudo raspi-reconfig 1.安装字体 默认安装的是英文字体,如果时区选择中文,将会乱码,因此需要安装中文字体进行汉化。 sudo apt-get install ttf-wqy-zenhei 2.安装中文输入发 3.修改键盘布局 键盘布局默认是英标的,需要将其改成美标 输入sudo dpkg-reconfigure keyboard-configuration后选择通用的104键PC键盘(Generic 10 ...

KM(Kuhn-Munkres)算法
KM(Kuhn-Munkres)算法 带权二分图最佳完美匹配,O(n^3),(运用匈牙利算法辅助求解),同时也是完备匹配 只适用于带权最大匹配一定是完备匹配的情况,实践中建议用费用流来解决。 完全二分图一定是偶数个点 可行顶标(Feasible Labeling):结点函数(x),任意边(x,y):1(x)+l(y)≥w(xiy)。 相等子图:G的生成子图,包含所有点以及满足l(x)+I(y)=w(x,y)的边(x,y) 如果EL有完美匹配为PM,则该M是原图的最大权匹配: PM的权和等于所有点的顶标之和SV。 G的任一个最大权匹配M,边满足w(xy)≤l(x)+(y)→M边权和≤S ...

ACM-二分图
二分图的判定: 染色法1:假设DFS初始点A涂黑色,与它相邻的点就涂白色。如果搜到某一个点u的相邻点v已经涂色并且与u同色,就不可能是二分图啦~ 染色法2:就是给每个点进行标号,标为-1,1如果存在一条边连接的两个点标号相同,那么就是存在一个奇数环… 热身题: 判断无向图是否有环 用DFS遍历图g,如果访问到已经访问过的顶点,那么有环 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 ...

ACM-网络流
最大流 FF算法 最基本找増广路的算法 dinic实现(基础的FF算法) 反边:我们知道,当我们在寻找增广路的时候,在前面找出的不一定是最优解,如果我们在减去残量网络中正向边的同时将相对应的反向边加上对应的值,我们就相当于可以反悔从这条边流过。 技巧:flow[u]正边,flow[u^1]反边 建边的时候是同时建的,比如1的反边为2,2的反边为1,▲边不能从0开始 主要思路: 求增广路 分层图 dinic的优化 当前弧优化(作用不明显) 12345678910111213141516171819202122232425262728// 最原始int dfs(int no ...

ACM-树状数组和线段树
高性能问题: Q:需求:(老板给你分了台2GHz单核,内存500M的服务器然后让你写程序)程序每秒会收到一组数据,每组数据包含10万条命令,总共会有100万个仓库,每个仓库库存没有上限且可为负,库存初始为0。你需要在一秒内完成全部的命令,然后将查询结果按顺序得出后传回,命令如下: Add i j,i和j为正整数,表示第i个仓库增加j个库存(j不超过220) Sub i j,i和j为正整数,表示第i个仓库减少个库存(j不超过220) Query i j,i和j为正整数,i<=j,表示询问第i到第个仓库的总库存;End 表示结束,这条命令在每组数据最后出现; 思路一:用array去存储每 ...

PIL的Image笔记
PIL的Image学习 transpose和rotate transpose 1234from PIL import Imageimg = getCaptcha()# 对称反转img.transpose(Image.FLIP_LEFT_RIGHT) rotate 123456from PIL import Imageimg = getCaptcha()# expand默认为False时,超出原有尺寸的部分将用黑色填充,不会拓展尺寸img = img.rotate(45)# expand为True时,会根据图片大小,拓展尺寸img = img.rotate(45,expand=Tru ...

2019年8月23号运维笔记
2019年8月23号运维笔记 docker docker stop containerID,以后再重新启动时报错 1Error response from daemon: driver failed programming external connectivity on endpoint app (3c0c01ac6b42b7a420644fc2b4debfbbcc0e1d2e74e6294155c28aca82f794c4): (iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 12345 ...

app测试
app测试 命令 adb shell monkey 500随机执行500次 adb shell pm list packages -3 查看第三方包 adb shell monkey -p tv.danmaku.bili指定在某个软件中随机压力测试 adb shell monkey -p tv.danmaku.bili -p com.umaman.laiyifen 500会先执行来伊份 ▲.在测试应用程序某些选项的同时,也会进行系统级功能的测试,如截图、调音量等 adb shell monkey [-options] times 参数说明 1234567-s seed种子值:种子相同时, ...

2019-9月7号C++编程笔记
2019-9月7号C++编程笔记 auto 定义变量时放在变量前,无需知道具体变量类型,系统可自行推断类型,减少编程工作,特别是在模板使用时,使用更方便。 123456789101112131415161718auto a=1;auto b='a';auto s="abdc";auto c;//这样使用时错误的,系统无法自动推断出变量类型//下面为迭代指针使用,很方便vector<int> vec;auto it=vec.begin();/**模板使用案例*/template<typename InputIterator> TreeNode *creatTre ...

MinMax和Alpha-beta剪枝分析[转]
MinMax和Alpha-beta剪枝分析[转] 一般解决博弈类问题的自然想法是将格局组织成一棵),树的每一个节点表示一种格局,而父子关系表示由父格局经过一步可以到达子格局。Minimax也不例外,它通过对以当前格局为根的格局树搜索来确定下一步的选择。而一切格局树搜索算法的核心都是对每个格局价值的评价。Minimax算法基于以下朴素思想确定格局价值: Minimax是一种悲观算法,即假设对手每一步都会将我方引入从当前看理论上价值最小的格局方向,即对手具有完美决策能力。因此我方的策略应该是选择那些对方所能达到的让我方最差情况中最好的,也就是让对方在完美决策下所对我造成的损失最小。 Mini ...