自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Python metaclass

Python metaclass简介python中的类可以由type来动态的创建type(name,bases,dct)name: 将要被创建的class的名字bases: 指定将要被创建类的夫类dct: 类中的属性metaclass 为python中的语法糖, 目的在于让python能够对于创建类进行操作和修改, 可以写出非常漂亮简洁的代码1. 修改子类中的属性class Interfac

2017-09-03 15:06:25 407

原创 linux 部分常用技巧

Linux 技巧后台运行程序 & 打包压缩: tar -c 归档文件-x 压缩文件-z gzip压缩文件-v 显示压缩或者解压缩的过程-f 使用文档名expamle: tar -cvf /home/abc.tar /home/abc 只打包,不压缩tar -zcvf /home/abc.tar.gz /home/abc 打包,并用gzip压缩

2017-09-03 11:20:25 490

原创 Python WorkerThread设计实现

WorkerThread 设计具体细节threading.locallocal的用法:可以通过设置简单threading.local,并设置相应的LocalManager来管理local还可以继承自local class, 这种方法可以很有效的实现local的默认值, 方法, 初始化. 注意如果定义了 __init__ 函数, 将会在每个特定的线程中进行 __init__函数的调用,这对于初始化

2017-08-29 16:14:27 1399

原创 Python descriptor 描述器

Descriptor HowTo Guide概述介绍python descriptor 包含了自定义的descriptor, 和built-in python descriptors 包含了函数,属性(properties),静态方法,类方法.通常,一个descriptor是一个实例对象的绑定方法”binding behavior”, 他们的这些特性(attribute)可以通过descriptor

2017-08-29 16:12:35 468

原创 Docker 学习笔记

Docker容器概述Docker平台(platform)Docker 是一个为开发,运行app的开放的平台.Docker 使app从基础开发环境中分离,因此就可以快速的迭代和开发,可以很好的支持持续开发(CD)和持续集成(CI)(continuous integration and continuous development).Docker适用于高环境密集型,中小型的应用Docker 提供了一种宽

2017-08-29 16:11:24 451

原创 Requests 源码学习笔记

Requests 源码学习笔记 Requests是一个Python HTTP库, 由Kenneth Reitz大神编写,具体用法可参考官方文档开发哲学 PEP20 The Zen of PythonBeautiful is better than ugly.(美丽优于丑陋)Explicit is better than implicit.(显式优于隐式)Simple is better

2017-08-29 16:09:18 1339

原创 Python Mock测试

Mock Mock 测试为辅助单元测试的一个模块, 通常用来替换外部接口的依赖举例使用方法1. Mock 测试可以用来测试调用函数的具体参数, 而不是实际去调用它.如下例子: 当测试os.remove时,因为os.remove时python标准库里的东西,已经具有了完备的单元测试.所以,为了我们业务功能需求,使用mock测试,仅仅保证传递参数正确就可以.from mymodule import

2017-08-29 16:07:58 807

原创 Python 设计模式

Python 设计模式 for sleek and fashionable code概述两天重要原则Program to an interface not an implementationFavor object composition over inheritacne鸭子类型Duck Typing 如果该对象的行为像鸭子, 就可以认为是鸭子鸭子类型出现在动态语言中(dynami

2017-08-29 16:06:57 467

原创 Celery学习笔记

Celery(芹菜) Celery是一种分布式的异步任务队列,让应用程序可能需要执行任何消耗资源的任务都交给任务队列,让应用程序能够自如快速地相应客户端地请求任务队列任务队列是一种被用来向线程或者机器分发任务的机制,一个任务队列输入的单元被称为一个task,专用的worker线程持续的监听任务队列等待新的任务出现去执行.Celery的通信通过消息来执行,通常使用一个broker来在客户端和wo

2017-08-29 16:05:46 1775

原创 HTTP协议

HTTP协议概述超文本传送协议HTTP(HyperText Transfer Protocol)。HTTP 是一个应用层协议,使用TCP进行可靠传送。统一资源定位符URL统一资源定位符URL是用来表示从因特网上得到的资源位置和访问这些资源的方法。URL给资源的位置提供一种抽象的识别方法,并用这种方法给资源定位。<协议>://<主机>:<端口>/<路径>HTTP协议操作过程HTTP协议定义了浏览器怎样

2017-05-01 20:39:54 528

原创 域名系统DNS

域名系统DNS概述域名系统DNS(Domain Name System) 是因特网使用的命名系统,用来把便于人们使用的机器名字转化为IP地址。ARPANET时代,使用hosts文件,列出所有主机名字对应的IP地址。现在因特网的域名系统是一个联机分布式数据库系统,并采用客户-服务器方式。DNS使大多数名字都在本地进行解析( resolve ),仅少量解析需要在因特网上通信,因此DNS系统的效率很高。由

2017-04-30 01:34:29 753

原创 4.29面试总结

最近总结 4.29面试情况面试了地平线机器人和旷视科技,感觉技术氛围都特别浓厚。面试官都特别的好。面试总结地平线机器人一面注重基础,二面待确定旷视face++一面问题计算机网络是基础,在项目编程或者后台开发中很重要完善表达注重基础,面试不要太紧张,尽量多的讲详细注重系统的设计,数据结构和算法的设计socket编程中的函数以及重要函数mysql数据库两种存储引擎的特点和优缺点redis设

2017-04-29 23:05:02 3290

原创 TCP UDP详解

TCP和UDP简介TCP(Transmission Control Protocol) 传输控制协议 UDP(User Datagram Protocol) 用户数据报协议TCP和UDP都是OSI模型中的运输层的协议,运输层向上面的应用层提供通信服务,它属于面向通信部分的最高层,同时也是用户功能的最底层。从运输层的角度来看,通信的真正的端点并不是主机而是主机中的进程。网络层为主机之间提供逻辑通信,

2017-04-01 15:02:05 1300

原创 哈希表(hash)

C++ hash STL c++ hash_table 分析简介由索引到值的数据结构(data structure that maps keys to values)直接映射,需要很大的空间。空间的利用率不高,为了将某一元素映射到一个“大小可以接受之索引”,这样的函数为hash function(散列函数或者哈希函数)。通常的哈希函数为取模。哈希函数(hash function)h(ke

2017-03-29 12:34:37 365

原创 C++ 模版template

C++ Template模版类的继承和组合提供了对象代码复用的方法 Inheritance and composition provide a way to reuse object code. The template feature in C++ provides a way to reuse source code.template语法(Template syntax)templ

2017-03-29 12:33:33 424

原创 C++ 多态机制实现

C++ 多态机制实现 compiler implement late binding mechanism迟绑定是如何实现的(How C++ implements late binding)关键字virtual告诉编译器不应该执行早期绑定,相反的,应该自动的安装所有必要的机制去执行迟绑定 ( The keyword virtual tells the compiler it should no

2017-03-26 16:09:48 1068

原创 c++ 多态介绍

C++ 多态介绍 用c++ 虚函数机制实现的多态是继数据抽象(封装)和继承之后第三个重要的面向对象的特性向上转型(Upcast problem)//: C15:Instrument2.cpp// Inheritance & upcasting#include <iostream>using namespace std;enum note { middleC, Csharp, Eflat

2017-03-26 12:59:28 575

原创 c++ 对象模型与内存结构

c++ Object model object = data + algorithmData Layoutplain objectstruct foo{ int a,b,c;};12bytesalignmentstruct foo{ short a; int b; short c;};short 2bytesmemory alignment 12bytes

2017-03-21 18:50:26 439

原创 c++智能指针(smart pointer)详解

Smart Pointer Deal with c++11’s smart pointer facility.brief Smart pointers are class objects that behave like built-in pointers but also manage objects that you create with new so that you don’t

2017-02-17 14:59:27 5796

原创 c++类型转换详解

c++ 类型转换c++类型转换分为隐式类型转换和显式类型转换一,隐式类型转换又称为“标准转换”,包括以下几种情况:1,算术转换(Arithmetic conversion) : 在混合类型的算术表达式中, 最宽的数据类型成为目标转换类型。int ival = 3;double dval = 3.14159;ival + dval;//ival被提升为double类型2,一种类型表达式赋值给另一种

2016-10-09 14:41:20 848

原创 Effective C++ 学习笔记 01 const关键字

Effective c++ 01 习惯于c++1. c++是一个语言联邦多重范型编程语言(multiparadigm programming language)支持过程 (procedural)支持面向对象 (object-oriented)函数形式 (functional)泛型形式 (generic)元编程形式 (metaprogramming)2. 尽量使用const,enum,i

2016-09-26 01:42:13 424

原创 Effective C++ 学习笔记 00 概述

Effective C++ 0 导读术语(Terminology)1.声明式(declaration):告诉编译器某个东西的名称和类型。忽略其中的细节。extern int x; // object 声明式std::size_t numDigits(int number); // 函数(function)声明式class Widget; //类声明式template <typename T>

2016-09-21 15:12:37 410

原创 STL源码学习_1 简介概述,仿函数

STL概述与介绍1.STL c++标准模版库STL库包含了c++的基本算法与数据结构的框架,设计精巧,突出了范型编程的特点2.STL 六大组件和运用容器(containers)算法(algorithms)迭代器(iterators)仿函数(functors)配接器(adapters)配置器(allocators)在之后的学习中会简单的介绍上述源码构造以及底层实现3.仿函数所谓仿函数是指

2016-09-21 01:48:07 414

原创 求解模线性方程

求解模线性方程组求解线性不定方程组ax + by = c先求出一组解, 然后考虑如何表示通解, 设d = gcd(a, b), 假设c不是d的倍数, 则左边是d的倍数而右边不是, 则方程无解, 所以方程有解当且仅当d | c.设c = c’ * d, 我们先考虑方程 ax + by = d, 这样由扩展gcd便可求出一组解 (x’, y’), 则(c’x’, c’y’)就是原方程的一组解,然后考虑

2016-09-21 00:12:30 1539

原创 查分约束系统

查分约束系统定义如果一个系统由n个变量和m个约束条件组成,形成m个形如ai-aj≤k的不等式(i,j∈[1,n],k为常数),则称其为差分约束系统(system of difference constraints)。亦即,差分约束系统是求解关于一组变量的特殊不等式组的方法.观察xj-xi<=bk,会发现它类似最短路中的三角不等式d[v]<=d[u]+w[u,v],即d[v]-d[u]<=w[u,v]

2016-06-23 01:20:36 779

原创 扩展欧几里得算法求解模线性方程

求解模线性方程组求解线性不定方程组ax + by = c先求出一组解, 然后考虑如何表示通解, 设d = gcd(a, b), 假设c不是d的倍数, 则左边是d的倍数而右边不是, 则方程无解, 所以方程有解当且仅当d | c.设c = c’ * d, 我们先考虑方程 ax + by = d, 这样由扩展gcd便可求出一组解 (x’, y’), 则(c’x’, c’y’)就是原方程的一组解,然后考虑

2016-06-23 00:40:49 1087

原创 Gym 100231B Intervals

// // Created by 王若璇 on 16/3/6. /// // Created by 王若璇 on 16/3/6. //include include include include include using namespace std; const int max_n = 50000+100;define lson l,m,rt<<1define rson m+1,r,r

2016-03-07 14:20:15 381

原创 大二下半学期以及未来的展望

大二是大学四年中应该是最忙碌的一年了,有许许多多的东西要学习,数据结构,算法的重要性越来越突出了。努力努力再努力,有时候感觉快要坚持不住了。也怀疑过自己的选择,坚持acm能出成绩么?可是反过来想,不努力什么也没有。最近写了很多代码但是心态还是不行,算法思维要提高的还有很多很多,数据结构还有好多要去掌握。这样充实的生活确实能收获很多。以上是近期的总结。文笔真的很烂。这也是缺点啊。 对未来的展望,我还

2016-03-06 01:02:14 1276

原创 codeforces 631c Report

C. Report time limit per test2 seconds memory limit per test256 megabytes inputstandard input outputstandard output Each month Blake gets the report containing main economic indicators of the comp

2016-03-06 00:51:16 643

原创 codeforces 631B Print Check

B. Print Check time limit per test1 second memory limit per test256 megabytes inputstandard input outputstandard output Kris works in a large company “Blake Technologies”. As a best engineer of th

2016-03-06 00:48:41 602

原创 UVA 787 Maximum Sub-sequence Product

Bob needs money, and since he knows you are here, he decided to gamble intelligently. The game is rather simple: each player gets a sequence of integers. The players must determine, by using their mega

2016-03-04 00:31:43 621

原创 hihoCoder 1015 KMP算法

时间限制:1000ms 单点时限:1000ms 内存限制:256MB 描述 小Hi和小Ho是一对好朋友,出生在信息化社会的他们对编程产生了莫大的兴趣,他们约定好互相帮助,在编程的学习道路上一同前进。这一天,他们遇到了一只河蟹,于是河蟹就向小Hi和小Ho提出了那个经典的问题:“小Hi和小Ho,你们能不能够判断一段文字(原串)里面是不是存在那么一些……特殊……的文字(模式串)?”小Hi和小Ho仔

2016-03-02 12:28:48 467

原创 hihoCoder 1014 Trie树

1014 : Trie树时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 小Hi和小Ho是一对好朋友,出生在信息化社会的他们对编程产生了莫大的兴趣,他们约定好互相帮助,在编程的学习道路上一同前进。这一天,他们遇到了一本词典,于是小Hi就向小Ho提出了那个经典的问题:“小Ho,你能不能对于每一个我给出的字符串,都在这个词典里面找到以这个字符串开头的所有单词呢?”身经

2016-03-01 17:32:30 373

原创 UVA 10827 Maximum sum on a torus

题目大意求最大子矩阵的和的变形。 最大子矩阵的求解由最大子序列和变形而来。//// Created by 王若璇 on 16/2/5.//#include <iostream>#include <algorithm>#include <cstring>#include <cstdio>#include <vector>using namespace std;const int

2016-03-01 12:44:39 368

原创 Gym 100886G Maximum Product

the description of the problemFind the number from the range [a, b] which has the maximum product of the digits.Input The first line contains two positive integers a and b (1 ≤ a ≤ b ≤ 1018): the left

2016-03-01 12:37:48 842 5

原创 大二生活最近生活总结

大一下暑假参加了acm的集训,从此便走上了acm的道路。本来什么都不懂,到现在略知一二,感觉进步了很多很多。也感谢acm给我带来的那种乐趣。现在前不久我也开始了我的cf之旅,争取做到每一场都参加,我很是享受每一场比赛,和之后该题的过程。不知道acm这条路会走多长。但愿有所得,努力下去。好久没有更新博客了。大二确实非常的忙,有时候听一下以前不喜欢的文学,古典音乐也是一种享受。工科的严谨中也许有一

2015-11-14 02:00:00 727

转载 分期付款原理

在分期付款中還要瞭解分期付款的有關計算。  1.等額償還方式   若年初向銀行貸款D(元),準備分n期償還,每期均償還P(元),期利率為R。  貸款一期後,本金和應為D(1+R)。  第一次還款後剩餘款項為b1 =D(1 + R) − P,由於所剩款項要付利息,故第二次還款是在(D(1+R)-P)(1+R)的基礎上還P元,即第二期償還後剩餘款項為:  b

2015-07-30 14:40:40 2342

转载 组合数取模

    组合数取模分类: 数论 2012-10-03 12:41 4816人阅读 评论(6)收藏 举报组合数取模在ACM竞赛中是一个很重要的问题,很多选手因为数据太大而束手无策,今天就来详细讲解它。 组合数取模就是求的值,当然根据,和的取值范围不同,采取的方法也不一样。 接下来,我们来学习一些常见的取值情况 (1)和 

2015-07-15 16:13:57 491

原创 POJ 2653 Pick_up_stick(计算几何)

B - Pick-up sticks//问题描述Crawling in process...Crawling failedTime Limit:3000MS    Memory Limit:65536KB     64bit IO Format:%I64d & %I64uDescriptionStan has n sticks of various

2015-06-18 16:27:21 536

转载 计算几何相关知识和算法概论

怒火之袍      计算几何算法概览一、引言  计算机的出现使得很多原本十分繁琐的工作得以大幅度简化,但是也有一些在人们直观看来很容易的问题却需要拿出一套并不简单的通用解决方案,比如几何问题。作为计算机科学的一个分支,计算几何主要研究解决几何问题的

2015-06-16 16:10:44 732

空空如也

空空如也

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

TA关注的人

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