自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 一行命令搞定mac上matplotlib画图显示中文!

使mac的matplotlib绘图显示中文的语句吐下plt.rcParams['font.sans-serif'] = ['Arial Unicode MS']之前看了很多方法,还需要安装字体的过于麻烦了。后来才发现,一句话就可以搞定了。...

2020-03-24 00:09:25 505

原创 kaggle house price思路记录

预测房价是一个离散值,所以采用回归的方法。数据读取采用 pandas.read_csv() 方法读取文件。然后再采用pandas_profiling模块对数据进行分析(探索性数据分析Exploratory Data Analysis,简称EDA)pearson皮尔逊系数(单变量),spearman(多变量)import pandas as pdimport pandas_profili...

2019-09-03 14:39:19 359

原创 matplotlib python绘图总结

先上官网 https://matplotlib.org/gallery/index.html下面先对matplotlib 进行简要的介绍matplotlib是第一个Python可视化程序库。基本框架:脚本层,艺术家层,后端层。直方图、线图、散点图、饼图(标题,图例,刻度)major tick 主刻度; minor tick 辅刻度;legend 图例; title 标题; spin...

2019-08-28 17:03:25 304

原创 邓公总结课

python listpython 语法一般从list开始讲起。list 插入、删除元素比较容易,查找比较慢。两种对list进行翻转操作。def reverse_1(L){ lo,hi = 0, len(L)-1 #从首末元素开始 平行赋值 while lo<hi #依次令对称元素 L[lo],L[hi] = L[hi], L[lo] #互换,然后 lo,hi = ...

2019-08-25 16:57:35 415

原创 如何下载网站内的各种视频(mac)

首先要使用chorme浏览然后打开开发者模式,选择media选项如果是视频流格式的话则需要寻找到.m3u8文件Mac 电脑安装brew install ffmpeg然后输入ffmpeg -i "http://xxxx.com/file_name.m3u8" "save_video.mp4" https://www.jianshu.com/p/0dccf2fb0dff...

2019-08-25 14:59:46 2235

原创 组合数学复习

1、排列和组合计数基本原理,加法法则和乘法法则无重复无遗漏排列 组合排列可重排列 mulitiset 依赖于无限集26个英文字母能组成多少4位数的字符串 26的四次方26个英文字母能组成多少4位数的字符串,其中每位字母不相同 P(26,4)26个英文字母能组成多少4位数的字符串,其中每位字母不相同且b和d不相邻容斥原理去除bd相邻的情况 C(24,2)*3!*2多重 所...

2019-08-25 12:18:41 688

原创 凸包模板

凸包描述给定n个二维平面上的点,求他们的凸包。输入第一行包含一个正整数n。接下来n行,每行包含两个整数x,y,表示一个点的坐标。输出令所有在凸包极边上的点依次为p1,p2,…,pm(序号),其中m表示点的个数,请输出以下整数:(p1 × p2 × … × pm × m) mod (n + 1)样例1输入107 9-8 -1-3 -11 4-3 96 -47 56...

2019-08-20 20:01:59 266

原创 判断点是否在凸包内

周测5描述二维平面上,给定n个点{ai}和m个点{bi},且保证这n+m个点中,任意两个点的x坐标或y坐标均不相同。对于每个bi,判断是否存在由3个ai,aj,ak(1≤i,j,k≤n,i≠j≠k)点组成的三角形包含bi(在三角形边上也算包含;允许三点共线的三角形,此时只有bi在三点中任意两点的线段上才算包含)。输入第一行为一个整数n。接下来n行,其中第i行有两个整数,表示ai的横纵坐标...

2019-08-20 19:54:58 4546

原创 小棕圈地 凸包旋转卡壳

小粽圈地问题描述小粽家里有一块地,地上有 n 个木桩。小粽家的地可以看作是一个平面,并且小粽知道每个木桩的坐标 (xi,yi)。小粽很喜欢四边形,现在她想从这些木桩中选出 4 个来围成一个四边形(这个四边形为简单多边形,即每条边不能和自己相交,但不一定要为凸四边形),并使得这个四边形的面积最大。请你帮小粽算出这个最大值是多少。输入格式第一行一个正整数 n 表示木桩的大小。接下来 n 行...

2019-08-20 16:39:45 240

原创 矩阵hash 习题

描述给定两个矩阵,判断第二个矩阵在第一个矩阵的哪些位置出现过。输入输入的第一行包含四个正整数a,b,c,d,表示第一个矩阵大小为a×b,第二个矩阵的大小为c×d。接下来是一个a×b的矩阵。再接下来是一个c×d的矩阵。保证矩阵中每个数字都为正整数且不超过100。输出若第二个矩阵在第一个矩阵的(i,j)位置出现(即出现位置的左上角),输出i和j。若有多个位置,按字典序从小到大的顺序依次...

2019-08-17 20:25:26 317

原创 基数排序 习题

基数排序时间限制:10 sec空间限制:1 GB问题描述给定 n 个 [0,2^k) 之间的整数,请你将它们升序排序。由于 n 可能很大,为了避免过大的输入、输出规模,我们会在程序内部生成数据,并要求你输出排序后序列的哈希值。具体方法如下(用c++代码展示):typedef unsigned int u32;u32 nextInt(u32 x){x^=x<<13;x^...

2019-08-17 19:37:47 983

原创 KMP算法。习题两道循环节&字符串匹配。cs精英挑战营

循环节由Next表可知。#include <cstdio>#include <cstring>#define maxl 1000000void getNext(char * s, int len, int next[]){ int t=next[0]=-1; int j=0; do ( 0>t || s[j]=...

2019-08-16 21:26:30 196

原创 TRIE树 习题-前缀

前缀 CS精英挑战营,trie树典型题#include <cstdio>#include <cstring>#include <iostream>using namespace std;// ================= 代码实现开始 =================const int M = 505, L = 1000005;//...

2019-08-16 19:46:25 160

原创 最长公共子序列实质(LIS)最长递增子序列 nlogn做法

最长公共子序列时间限制:1 sec空间限制:256 MB问题描述给定两个 1 到 n 的排列 A,B (即长度为 n 的序列,其中 [1,n] 之间的所有数都出现了恰好一次)。求它们的最长公共子序列长度。输入格式第一行一个整数 n ,意义见题目描述。第二行 n 个用空格隔开的正整数 A[1],…,A[n],描述排列 A。第三行 n 个用空格隔开的正整数 B[1],…,B[n],描...

2019-08-10 20:09:43 373

原创 奶牛吃草 DP

奶牛吃草时间限制:4 sec空间限制:256 MB问题描述有一只奶牛在一条笔直的道路上(可以看做是一个数轴)。初始,它在道路上坐标为 K 的地方。这条道路上有 n 棵非常新鲜的青草(编号从 1 开始)。其中第 i 棵青草位于道路上坐标为 x[i] 的地方。贝西每秒钟可以沿着道路的方向向前(坐标加)或向后(坐标减)移动一个坐标单位的距离。它只要移动到青草所在的地方,就可以一口吞掉青草,它...

2019-08-10 19:39:47 753

原创 背包问题 变式 DP

如果单独将某个物品去除,每次做一个01背包。时间复杂度为O(nqnv)如果将其拆分为,两个体积为V1、V2的背包。采用前缀背包和后缀背包。拆成两部分#include <stdio.h>#include <utility>#include <math.h>#include <algorithm>#include <string....

2019-08-10 19:15:03 373

原创 倒水问题BFS CS精英挑战营

倒水问题问题分析操作分类:本质上是六种操作。如果采用暴力枚举的方法,O(6^t) (t<=4 可以用搜索算法)采用动态规划算法。 与记忆化搜索类似。通过搜索算法去优化。 只要A杯水u中和B杯水v中的量是相同的,并且操作数为i,dp[i][u][v],那么就可以认为是相同的状态。dp[i+1][x][y] 来表示下一次可以到达的水量x,y。 若为零则表示不能到达。若为一,则表示...

2019-08-09 21:07:04 452

原创 计算几何(二) by邓俊辉老师

凸包算法 最简。极点算法—极边算法—incremental javis march or 类似于insertion sort更快地 O(nlogn) R.Graham Scan 线性时间进行扫描就可以了。sort all vertices by polar angle 。关于LTL lowest then leftmost 根据他们的极角进行排序。实际上不用算出每一个角度。无非是对每一个...

2019-08-08 22:17:10 910 1

原创 计算几何(一) by 邓俊辉老师

计算几何诞生于上世纪八十年代中后期。在竞赛中考察概率不高,因为不易编成竞赛题,但是遇到的情况会非常多。计算几何的特点 - 注重于符号 仅有加法乘法没有除法in-Triangle Test每三个点(P、Q、R)确定一个三角形。如何判断第四个点,落在三角形内部还是在三角形外部。正确且简洁的办法。做一条射线,穿越奇数词(odd)在内部;穿越偶数次(even 0,2)在外部。要用到分而治之和...

2019-08-07 21:11:34 3277 4

原创 散列 桶排序 最大间隙 基数排序 bitmap by邓俊辉老师

散列call by value 通过值去索引。java 中有 HashMap散列 和 Hashtable散列表 利用key-value pair存到相应的位置。python 中有 dictionary字典 利用hashtable数据结构和算法是硬币的两面。数据存储的问题???1、space 空间大小,效率。2、time 需要做一个初始化。for… memset…哈希算法:如果...

2019-08-06 21:36:21 598

原创 全排列 by马昱春老师

全排列。递归普通递归,新加入的数字在中间穿梭递归算法存在爆栈的问题利用深度优先搜索DFS的递归方式。1-n的排列的一一对应,存在一种顺序关系。字典序法排列是有续的,除去最后一个排列中,都有前驱。除去第一个排列,都有后继。所谓一个的下一个,就是折光仪he一个字符串与下一个有尽可能长的共同前缀,也即变化尽可能限制在尽可能短的后缀上。123 132 213 231 312 321如...

2019-08-06 09:45:07 246

原创 字符串匹配 蛮力搜索 KMP BC GS 数据结构Trie by邓俊辉老师

字符串:一连串的字符连在一起。是一种线性结构。仅能存储字符集。特点:非常长、比一般的线性序列长一些。call by pattern 根据模式进行访问。子字符串substr(i,k)=S[i,i+k) 左闭右开。一共k个字符 与 subseqence 子串 不同 前者更多是一些切片slice,后者就是一些子串。substring的特例:前缀prefix(k)=S[0,k)和后缀suff...

2019-08-05 21:35:50 519

原创 铺路 CS精英挑战营习题

七种方法图解:/*题解:先得到递推关系式f(n)=f(n-1)+f(n-2)*6用f(n)表示3*n的地板的方案数,它可以这样铺:第i列只用1*1的块,那么只有一种方案,也可以i和i-1列一起用2*2与1*1的块铺,或者用2*2的三角和1*1的块铺,这样有6种可能。然后得到f(n)+2f(n-1)=3(f(n-1)+2f(n-2))得到f(n)+2f(n-1)关于3^n的表达式...

2019-08-04 19:58:31 376

原创 k小数 CS精英挑战营

求第k大的数据类似于快排。但是求第k个的递归子问题只有一个。#include <cstdio>#include <cstdlib>#include <cassert>#include <iostream>template<typename T>inline void swap(T& a, T& b){...

2019-08-03 20:07:08 149

原创 序列计数 CS精英挑战营习题

序列计数描述给定一个n个整数的序列以及一个非负整数d,请你输出这个序列中有多少个连续子序列(长度大于1),满足该子序列的最大值最小值之差不大于d。连续子序列:序列1 2 3中长度大于1的连续子序列有:1 22 31 2 3输入第一行包含两个整数n,d。接下来一行包含n个整数。输出输出一个整数,表示满足条件的连续子序列个数。样例1输入8 55 5 4 8 -10 10 0...

2019-08-03 19:45:03 282

原创 站队 第一类斯特林数 csJ精英挑战营习题

利用第一类斯特林的通项公式求解S(n,k)=S(n−1,k−1)+S(n−1,k)∗kS(n, k)=S(n-1, k-1)+S(n-1, k) * kS(n,k)=S(n−1,k−1)+S(n−1,k)∗k#include <stdio.h>#include <iostream>using namespace std;#define P (1000000000...

2019-07-31 14:02:27 168

原创 动态规划 by邓俊辉老师 fibonacci 快速幂 最短向上路径 最长曼哈顿道路 最长公共子序列 背包问题 传递闭包 任何两点最短路径

分而治之也是存在前提的。 分而治之是一种递归问题可以分,分出来的规模也差不多。分出来的问题,是彼此不相关的,相互独立的。可以分而治之。但是存在一些不是相互独立 的子问题。会造成工作量的爆炸。呈指数级别增加。但是动态规划能够有效发现这类问题,但不能够解决全部此类问题。DP是把递归的思路反向变为递推。最优化子结构。#也是一种贪心Fibnacci:recursion斐波那契数列。每隔一个月就可...

2019-07-30 21:32:16 494 2

原创 图搜索 (BFS广度优先搜索 DFS宽度优先搜索)by 邓俊辉老师

广度优先搜索BFSBreadth First Search以s为中心,每一单位时间向外传递。以草和火种作为比喻,源头为火种,待点燃的点为草。每单位时间向外蔓延一个单位。前锋面越来越大在图搜索的过程中在模拟这个火种蔓延过程。注二叉树的层次遍历也是有顺序的。图搜索模板:first in first out - queue 每一个前锋面都排成一个队列,先进先出template<t...

2019-07-29 21:59:06 623

原创 分组 CS精英挑战营 习题

分而治之#include <bits/stdc++.h>using namespace std;// ================= 代码实现开始 =================/* 请在这里定义你需要的全局变量 */// 将所给数组分成连续的m份,使得数字之和最大的那一份的数字之和最小// n:数组大小// m:题中的m// a:所给数组,大小为n/...

2019-07-29 00:26:39 258

原创 凑零钱 母函数 cs精英挑战营习题

代码参考博客:http://blog.csdn.net/xiaofei_it/article/details/17042651//母函数即生成函数#include <stdio.h>#include <string.h>#include <iostream>using namespace std;/*v[i]表示该乘积表达式第i个因子的权重,...

2019-07-28 13:43:39 194

原创 搭积木 求组合数 CS精英挑战营习题

#include <stdio.h>#include <iostream>using namespace std;#define P (1000000000+7)int b[2][2000];int C(int n , int m){ bool cur = 1, last = 0; for(int i=0; i<=n; i++) ...

2019-07-28 11:52:22 142

原创 重编码-k cs精英挑战营 Huffman树/编码构造

#include <queue>#include <cstdio>#include <vector>#include <stdlib.h>using namespace std;typedef long long LL;// =================== 代码实现开始 ========================...

2019-07-27 20:59:32 135

原创 排序二叉树 构建与遍历 cs精英挑战营 习题

#include<stdio.h>#include<iostream>#include<vector>using namespace std;const int N = 100001;// 排序二叉树,左小右大struct node{ int val,l,r;}t[N];//利用结构体数组来形成二叉树的数据结构/*java 语言...

2019-07-27 20:46:05 103

原创 kruskal算法实现 —c++ 最小k生成森林问题 cs精英挑战营 柿子问题

//#include <bits/stdc++.h>#include <stdio.h>#include <vector>#include <iostream>using namespace std;// ================= 代码实现开始 =================#define MAXN 100000+10...

2019-07-25 21:43:51 327

原创 周测1最大字典序出队。但是进队只能从尾部进 cs精英挑战营

//#include <bits/stdc++.h>#include <queue>#include <deque>#include <vector>#include <stdio.h>using namespace std;// ================= 代码实现开始 =================//...

2019-07-25 00:49:57 178

原创 中位数 cs精英挑战营 OJ

#include <queue>#include <cstdio>using namespace std;/* ===================== 代码实现开始 =================== */typedef priority_queue<int, vector<int>,less<int> > Big...

2019-07-23 23:53:00 103

原创 分而治之 by邓俊辉老师 主定理 最大子序和 归并排序 众数 linearselect diameter cloest pair

分而治之divide and conquer将一个问题分成两个子问题。两个问题的规模相当、两个子问题加起来的规模不能比原规模大。最好两个子问题不相关。如果两个子问题耦合性太强那么可以考虑动态规划。分而治之不得不利用递归。其算法性能的描述:T(n) = a*T(n/b) + O(f(n))f(n) 包含了上层的divide和merge a个子问题。Master Theorem:主定理...

2019-07-23 22:23:52 976

原创 等式 清华OJ 训练营 c++实现

等式描述有n个变量和m个“相等”或“不相等”的约束条件,请你判定是否存在一种赋值方案满足所有m个约束条件。输入第一行一个整数T,表示数据组数。接下来会有T组数据,对于每组数据:第一行是两个整数n,m,表示变量个数和约束条件的个数。接下来m行,每行三个整数a,b,e,表示第a个变量和第b个变量的关系:若e=0则表示第a个变量不等于第b个变量;若e=1则表示第a个变量等于第b个变量...

2019-07-23 12:08:28 325

原创 堆&减而治之-最短路径(Dijkstra) by邓俊辉老师

数据结构(三)堆实际上是一种特殊的树。是一种几乎完美的树也就是一种完全二叉树完全二叉树只能在最底层&次底层出现不满的叶子节点,最底层必须在左边。满二叉树,每一层都是满的。堆的好处,对于顺序存储的堆——父节点k:左孩子2k+1,右孩子2k+2。即LC(k)=(k<<1)+1 RC=(k+1)<<1对堆的操作——insert(e)、getMax() ...

2019-07-22 21:53:25 417 1

原创 数据结构&贪心(二) by邓俊辉老师

数据结构&贪心(二)BST binary search tree 二叉搜索树对一个二叉搜索树,从根节点开始比较大小搜索。任意节点:左后代比根节点小、右后代比根节点大。左小右大。BBST:balanced binary search tree 平衡二叉树。对于深度比较深的节点,步骤会比较多一些。对于树进行平衡化,深度比较平均散列表-哈希表 hashtable怎么去做这么一个映...

2019-07-18 21:32:49 290

空空如也

空空如也

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

TA关注的人

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