- 博客(142)
- 资源 (8)
- 收藏
- 关注
原创 一个菜逼程序员的2016年度总结
一个菜逼程序员的2016年度总结标签(空格分隔): 总结 最近看到阮一峰老师的2016年度总结,菜逼程序员我也想记录下自己的这一年。从学校走出来 15年6月从学校走出来,和几个大学死党同学规划毕业旅行是大西北,作为一个重庆的山上娃娃,见到沙漠,戈壁,雅丹,丹霞,草原还是蛮惊到掉牙的,涨了见识,but代价是从西北回来到公司后同事说:”还以为是羽泉来公司了呢”。公司入职 毕业旅行完就直接
2017-01-01 03:05:26
1426
原创 Mysql优化之问题定位
Mysql优化之问题定位先扯淡下,很久没有来csdn写博客了, 最近在学燕18的mysql优化,并且这位老师讲的高达上还接地气, 今天刚好有空可以来总结这段时间学到的东西先上一张流程图(这张图引自燕18的教程)当遇到一台db服务器有问题的时候, 首先不是去看代码哪里有问题, 想sql语句是否写,表的结构是否合理之类的问题;而是需要从宏观的角度去
2014-08-03 15:34:15
1539
原创 Treap 基本操作
treap = tree + heap写博原因:在我学treap的时候网上的很多博客给了我很大的误解, 也有可能是我自己功底薄弱的原因, 网上很多很不错的博文都直接说Treap是平衡树, 由于我自以为平衡树就得满足节点左右孩子高度只差 终于才知道, 大家所说的平衡树其实分两种1. 一种是绝对的平衡, 满足高度差2. 而另一种却是期望平衡树, 也就是说通过计算, 数学期望
2014-02-10 21:57:56
2247
1
原创 WIN7 下 VMWare上网之NAT模式
VMware上网一共有3中网络配置方式,各有优点:规定说明:你平时所有的机子称为主机或者是宿主机,在宿主机里面可以安装多个虚拟机,这些虚拟机也就是就是虚拟机,加入我们称主机为主机A, 一共装了3个虚拟机,分别为V1,V2,V3;桥接模式优点:主机A,虚拟机V1,V2,V3, 四台机子之间能够任意两两通信, 也就是说三台虚拟机完全是跟主机A是同一个等级的,
2014-01-29 15:45:18
4762
原创 C++ 写栈 和 队列
栈的代码, 比较容易实现:#include #include #include #include #include using namespace std;class Point{public: int x, y; Point(int x, int y):x(x), y(y){} Point(){}};templateclass Stack{public: Sta
2013-12-20 12:07:53
1104
原创 用快速排序找中位数
这个很好理解, 就像找前K个数一样, 这个就像找前n/2个数, 不过这里说只是要中位数就没有必要找完了, 于是就可以大规模的剪枝;剪枝方法就是递归的时候对不可能有中位数的区间就直接减掉, 这个可是很大的一个剪枝, 效率急速上升#include #include #include using namespace std;const int mmax = 10000001;int a[
2013-12-20 10:39:03
8903
1
原创 浏览器兼容调试
浏览器的兼容性主要是各大浏览器对相同的标签属性解析不一样导致的, 那么解决的办法要么就是直接写出兼容所有浏览器的代码, 要么就是专门针对出问题的浏览器单独调试那么当专门针对性的调试的时候就需要用到hack了下面来自孙坚老师的视频的一张截图:看图片就知道了, 如果想单独调试ie9,那么需要:root, ie6就是加下划线
2013-12-19 13:43:17
1294
原创 DIV+css模仿京东整体布局
测试导航 *{ padding:0px; margin:0px; } /*首部*/ #top_box{ width: 100%; height: 31px; background: #F7F7F7; } #top_box #box{ width:990px; height: 31px;
2013-12-19 12:30:14
4875
原创 div+css模拟京东导航
测试导航 *{ padding: 0px; margin: 0px; } #menu{ } #menu li{ float: left; list-style: none; } #menu li a{ text-decoration: none; font-size: 15px; font-weight: 700;
2013-12-18 17:32:00
1841
原创 Java 线程同步
线程同步就是线程的同步运行,多个线程必须步调一致, 比如缓冲区, 一个线程向缓冲区写入输入, 要求另一个线程必须同步从缓冲区读出数据如下代码就无法达到这个要去, 因为现在只是对缓冲区锁定了,没有同步import java.io.*;public class Buffer { //缓冲区 private int value; void put(int i
2013-11-28 13:17:12
1249
原创 Java 线程互斥
线程互斥就是用关键字synchronized 来对共享数据对象尽心锁定, 包括synchronized方法和 synchronized 块看一个经典的银行例子代码:import java.io.*;class hello //银行账户类, 名字不好听{ private String holdName; private double amount; pu
2013-11-28 11:39:07
1008
原创 c++ 里面由浅拷贝引起的悬挂指针
悬挂指针一般是由于指向该地址的指针突然指向了别的地方, 但是在改变这个指向之前没有对该地址里面的内容撤销, 导致该内从地址里面的数据没法再被使用但同时却一直存在, 造成内存泄露这里讨论的是浅拷贝引起的悬挂指针问题, 浅拷贝一般是自己没有定义拷贝构造函数和重载 = 引起的, 所以当你的类中有了指针或者数组的时候一定要自定义上面的两个函数, 当然类中有自定义类型的时候也要注意用上免的两个函
2013-11-22 15:08:24
1564
1
原创 深搜之回溯法总结
回溯法是个好东西, 当自己对一个问题没有任何思路的时候就可以用回溯法, 虽然效率是一个严重的问题, 但是却能给问题一个形象的解释, 或者可以从回溯法想到一个不错的算法也不一定当遇到一个可以用到回溯法的时候需要按照如下步骤进行:1. 确定问题的一个解空间树, 这个解空间树至少包含一个你需要的那个解, 否则这个树就完全没有意义了2. 组织好这棵树, 弄明白这棵树的每一个节点代表什么
2013-11-10 22:04:55
2686
转载 beautifulsoup的简单用法
取得html檔在python可以很輕易的用urllib來達成webfile = urllib.urlopen(url)讀取內容可以用webcontext = wefbfile.read()orwebcontext = webfile.read().decode("UTF-8")如果不指定decode方式則以系統預設方式decode交由Beautifu
2013-10-23 21:08:00
9547
原创 正则表达式基础
什么是正则表达式?其实就是一些匹配字符的式子而已, 不过这个式子不只是ctrl + F 的完全匹配, 而是异常的灵活, 在各种奇葩要求的字符查找要求上很有价值正则表达式是分普通字符和元字符的, 就好像一般语言中分普通字符和转移字符一样;普通字符其实就是一般的字符, 比如‘a', 'b', ’我'元字符元字符就像转移字符一样不能直接匹配, 他们代表的是一些
2013-10-23 20:04:30
850
原创 聚类算法反应人们想要的物品(tanimoto相关度)
也就是tanimoto相关度能够很好的解决01关系, 也就是是否关系, 比如是否看过某部电影; 而皮尔逊相关度能够很好的解决一些用程度衡量的, 比如为某部电影打分就是程度只是把距离函数改掉了:#coding:utf-8import osimport sysimport chardetfrom math import sqrtfrom PIL import Image, Ima
2013-10-04 22:03:13
1347
原创 聚类算法之K-均值聚类
先看一张图这个算法思路很简单, 就是最开始的时候随便定 k 个点, 然后遍历每一个原图的点, 使得每一个点都归属与那k个点中的一个, 然后更新那k个点的位置(一般是中点)这个算法是解决当数据太多的时候层次聚类的算法太慢而设计的, 别的优点我就不知道了, 这个算法还可以调节k的大小, 比较方便, 属于人为干预性的, 而层次聚类就是属于自动型的代码中用到了上一篇文章所提供的
2013-10-04 19:58:44
1316
原创 聚类算法之层次聚类
分级聚类就是一棵树加入我们有如下一张图那么通过聚类之后形成一颗如下的树:现在就分好了级,而且还能看出距离关系, 很明显ab之间的距离比de之间的距离要短import osimport sysimport chardetfrom math import sqrtfrom PIL import Image, ImageDrawdef re
2013-10-04 15:02:03
1847
1
原创 基于物品的协作性过滤推荐系统(为用户推荐影片)
前面的两篇是基于用户的推荐, 但是当物品很多的时候就显得很慢了, 所以就有了基于物品的推荐, 好处就是提前算好任何两件物品的相似度, 这样就可以节省大量的运算(只需要定期更新物品之间的关系)#!/usr/bin/env python #coding=GBKimport chardetfrom math import sqrt import urllibimport pyd
2013-10-01 13:11:06
1283
原创 基于用户的协作性过滤推荐系统(找出相似的电影)
#!/usr/bin/env python #coding=GBKimport chardetfrom math import sqrt #电影打分, ltl对a电影打了4.3分.....critics = {'ltl':{'a':4.3, 'b': 3.5, 'c': 4.7} ,'oyl':{'a': 4.3, 'b': 3.5, 'd': 3.0, '
2013-09-30 23:52:46
1665
原创 基于用户的协作性过滤推荐系统(为用户推荐影片)
#!/usr/bin/env python #coding=GBKimport chardetfrom math import sqrt #电影打分, ltl对a电影打了4.3分.....critics = {'ltl':{'a':4.3, 'b': 3.5, 'c': 4.7} ,'oyl':{'a': 4.3, 'b': 3.5, 'd': 3.0}
2013-09-30 23:29:07
1349
原创 Hdu 4768 Flyer(2013长春网络赛)
不断的异或就可以了, 用了一个等差数列连续异或的模板#include typedef __int64 LL;#include using namespace std;LL Get(LL a,LL b,LL c,LL n) { LL res=0; res+=(b/c)*n;b%=c; res+=(a/c)*n*(n-1)/2;a%=c; if (a*n+b<c)
2013-09-28 18:40:10
1135
原创 Poj1149 PIGS (经典网络流)
顾客买猪问题建图的方法:当第i个猪圈第顾客K(不是每一个顾客都去打开每一个猪圈)一次被打开的时候, 就从超级源点连一条到顾客K的边, 权值为猪圈i里面猪的数量当第i个猪圈不是是第一次被打开的时候, 那么就将上一个打开这个猪圈的人连到当前顾客, 权值为正无穷将所有顾客都连一一条边倒超级汇点, 权值是顾客想买猪的数量//SPA#include #includ
2013-09-25 22:52:54
756
原创 Poj 3281 最大流入门
就是比二分图匹配多一个, 把牛放中间, 食物和饮料放两边, 然后就是用一个牛拷贝一份, 这样防止多分牛奶或者食物流到同一只牛的地方, 然后每一条边的权值是1//SPA#include #include #include #include #define CLR(arr, val) memset(arr, val, sizeof(arr))#pragma w
2013-09-25 20:39:43
833
原创 最大流模板
Edmods_Karp 算法时间复杂度: O(n * m * m)//EK#include #include #include #include #define CLR(arr, v) memset(arr, v, sizeof(arr))#pragma warning (disable:4996)using namespace std;const int MaxE
2013-09-25 08:54:58
807
原创 hdu3549 flow problem
第一次做网络流, 纪念一小下吧邻接矩阵表示:#include #include #include #include #pragma warning(disable:4996)using namespace std;#define CLR(arr, v) memset(arr, v, sizeof(arr))const int M = 20;int map[M
2013-09-24 09:33:32
834
原创 hdu2647 Reward(拓扑排序)
老板要给很多员工发奖金, 但是部分员工有个虚伪心态, 认为自己的奖金必须比某些人高才心理平衡输入若干个关系a ba cc b意味着a 的工资必须比b的工资高 同时a 的工资比c高; c的工资比b高当出现环的时候输出-1思路: 反向建图, 然后top排序分层次; 第一次的工资为888(最低), 第二层的工资 + 1, 后面一样#includ
2013-09-19 09:35:09
2377
原创 vector存图
用vector存图并执行相关操作#include #include #include #include #include #include #include #define print(a) cout << #a << " : " << a << endlusing namespace std;struct node{ int v; int w; no
2013-09-18 17:17:49
2435
1
转载 最小圆覆盖
代码如下:#include #include #include using namespace std;const int N = 1005;struct node{ double x, y;}p[N];node center; //圆心 double radius; //半径double dis(node s, node t){ ret
2013-09-11 20:12:34
852
原创 hdu4720 三角形的最小圆覆盖
求一个三角形的最小圆覆盖两种情况:1. 是锐角及直角三角形, 那么这个圆就是外接圆2. 是钝角三角形, 那么这个圆的直径是这个最长边的中点double getDis(Point a, Point b){ return sqrt((a.x - b.x) * (a.x - b.x) + (a.y - b.y) * (a.y - b.y));}//////////////
2013-09-11 19:47:41
2692
原创 c++ 类的大小问题
先看一段代码#include #include #include #include struct A{ double b; //int c ; double d; int a; int f; int t; char g; char g1; char g3; int vv; char g4; //char g5;};class X{ double
2013-09-07 01:29:11
702
原创 左旋转字符串(字符串)
左旋转字符串(字符串)题目:定义字符串的左旋转操作:把字符串前面的若干个字符移动到字符串的尾部。如把字符串abcdef左旋转2位得到字符串cdefab。请实现字符串左旋转的函数。要求时间对长度为n的字符串操作的复杂度为O(n),辅助内存为O(1)。思路: 由于两个要求,导致编码很麻烦了, 思路就是成段的和相邻的字符交换abcdef 2那么就用ab 和 cd交换变成 cdabef
2013-08-27 00:41:45
876
原创 不用循环, 判断,三元运算法, 选择求1 + 1 + ..100
用了两种方法:#include #include #include using namespace std;class te{public: static int cnt; static int sum; te() { cnt++; sum += cnt; } int static getSum() { return sum; }};i
2013-08-26 19:25:53
1218
原创 poj 2243 a星搜索
a星算法我不介绍了,参考这个链接直接上这个题目的代码:#include #include #include #include #include using namespace std;int dir_x[] = {-2, -1, 1, 2, 2, 1, -1, -2};int dir_y[] = {1, 2, 2, 1, -1, -2, -2, -1};cons
2013-08-23 22:54:41
963
原创 庞果英雄会 幸运数
题目详情如果一个数各个数位上的数字之和是质数,并且各个数位上的数字的平方和也是质数,则称它为幸运数。给定x,y,求x,y之间( 包含x,y,即闭区间[x,y])有多少个幸运数。例如1到20之间有4个幸运数,它们是11,12,14,16,像因为1+1 = 2是质数,1^2 + 1^2 = 2也是质数等等。给定函数原型,其中1思路:打
2013-08-21 23:55:09
1409
原创 构造函数初始化列表
class Object{public: Object() : v2(5), v1(v2 * 3) { … }private: int v1, v2;}看看愿意是 先初始化v2为5, 然后初始化v1为 3 倍的 v2但是结果却是奇葩的, 这个是因为构造函数的初始化列表遵循的原则是先初始化父类(父类也是这个原则, 那么就相当于递归),然后初始化本类的成员, 最
2013-08-21 17:15:02
807
原创 c++构造函数和析构函数调用规则
先看如下程序#include #include #include using namespace std;class Test{public: Test(int a):a(a) { cout << "创建对象 : " << a << endl; } ~Test() { cout << "销毁对象 : " << a << endl; } int a;};
2013-08-21 16:29:57
1143
原创 常量const小结
引入:为什么需要常量constconst 其实就是#define 的另一种解决方案, 由于#define的处于机制的是在预处理阶段而不是编译阶段(速度快而已嘛)所以就只能做纯文本代替,还有就是注意#define出来的东西都是在预处理阶段从而得到的一个好处就是这个常量不用储存空间。 加入#define IP 3 .0+ 0.1415 , 后面用到了 a = 2 * IP 好吧
2013-08-10 17:03:19
850
原创 函数重载与默认参数小结
引入为什么要函数重载?这个问题其实就是为了解决函数名字的冲突问题,因为假如有一个方法是动作洗, 那么如果是洗车洗衣服洗袜子都得是具体的名字, 这样多不好呀!必然性:名字写得烦也就算了,不是必然性的, 但是构造函数的实现,如果要需要实例化多重或者是多类的实例怎么办,一样得必须重载 为什么不能用返回值重载?这个问题的答案就是一般编译器内部都会将函数重新取一个名字,常用方
2013-08-10 02:03:17
1129
原创 python多线程总结
多线程总结话说多线程认识让我恼火了一阵子,很是不习惯程序跳来跳去的执行,毫无时间和空间逻辑的感觉了,现在对我所见的总结一下吧,其实多线程呢在目前的语言中都是差不多,所以只要你理解了多线程在任何语言都是使用的,不同的就是语法不同而已吧 1. 多线程内幕:什么是多线程,说白了就是多个线程并发的执行, 既然是并发执行,但是cpu是不可能同时执行多个线程吧,所以怎么办呢,其实是一个假象
2013-08-09 18:03:34
6651
Listary pro 4.01 能用的破解版
2015-05-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人