自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(81)
  • 资源 (2)
  • 收藏
  • 关注

原创 使用go进行json序列化和反序化时,该过程可能不可逆

使用golang进行json序列化时需要注意,该序列化过程可能不可逆,而且没有错误抛出。今天用go导出一批数据时,我按照以前python的习惯,将一条条数据json序列化后,输出到文件中去。bys, err := json.Marshal(obj)fmt.Fprintln(file, string(bys)))然后在测试导出文件的可用性发现基本一个string类型的数据跟原来的不太一样。...

2019-07-02 20:22:28 1064

原创 实现不重启服务的情况下改变tornado的工作进程数

要实现不重启服务的情况下改变tornado 的进程数,那得先理解tornado是怎么管理多进程的。 其实很简单,主要看process.py的fork_processes函数,了解子进程的创建过程。首先启动子进程。根据传入的进程数依次启动调用start_child函数fork一个进程,如果在子进程的上下文中,则改变全局变量task_id,并且返回task_id,退出fork_processes...

2018-05-11 11:20:53 1671

原创 使用epoll实现异步IO

看了几天tornado的源码,终于理解了异步IO的基本模型。简单来说就是在一个大循环中,处理事件监听和事件处理,关键点是所有IO操作都设置成非阻塞的模式,然后由事件循环监听。用epoll来实现一个简易版的EventLoop。 如下:from select import epollclass EventLoop(): def __init__(self): s...

2018-04-28 18:14:46 1426

原创 不得不注意tornado多进程部署的副作用

tornado多进程启动时,采用的是fork的方式。 一个现有进程可以调用fork函数创建一个新进程。由fork创建的新进程被称为子进程(child process)。fork函数被调用一次但返回两次。两次返回的唯一区别是子进程中返回0值而父进程中返回子进程ID。 子进程是父进程的副本,它将获得父进程数据空间、堆、栈等资源的副本。注意,子进程持有的是上述存储空间的“副本”,这意味着父...

2018-04-16 11:01:59 6475

原创 python日志重复打印

Python日志重复打印问题用Python的logging模块记录日志时,出现了重复输出日志的问题。这里我是把logger封装了一层:def init_logger(log_name, file_log_level=logging.DEBUG, stream_log_level=logging.INFO, max_bytes=200 * 1024 * 1...

2018-03-14 11:15:21 3801

原创 大文件多路归并排序

背景: 一堆小文件,每个文件中有10^6行的数字,要求将这些小文件合并成一个有序的文件。实现思路: 先将每个小文件整理成有序,可以用多进程来处理。 同时打开排完序的文件(打开的文件数受限于系统允许打开文件数,ulimit -a 查看,ulimit -n 修改可允许打开文件数),维护一个堆,堆中元素为{文件描述符,当前偏移量,当前行值},以当前行值比较。

2018-01-05 17:52:36 2083

原创 python字典的遍历顺序

定义一个字典,输出遍历结果a={"a":"1", "b":"1", "c":"1", "d":"1"}for i in a: print i,#输出顺序为:a,c,b,dprint a#输出:{'a': '1', 'c': '1', 'b': '1', 'd': '1'}可以看到定义的键顺序为a, b, c, d,但是输出的键顺序却为a, c, b, d。这跟字典的内储存储方式有关,

2017-12-15 11:23:26 15678

原创 无法忍受sbt构建scala的龟速,用maven构建spark应用吧

本文主要介绍如何使用maven构建spark应用,同样可以用于其他cmdline的java应用。项目结构/ /conf/ 配置文件 /libs/ 依赖包 /bin/ 启动命令脚本 /logs/ log /data/ 数据 /src/ 源代码 /pom.xml /assembly.xml项目pom.xml<?xml version="1.0" encoding="UTF-

2017-11-24 15:19:46 2055

原创 MapReduce解决图N步是否可达问题

输入:起始点集结束点集边集问题:求从起始点集到结束点集n步可到的边信息输出:连接起始点到结束点的边集case:起始点集(1,4) 结束点集(5, 6)边集(1-2,2-4,4-6,1-7,2-7,7-3,3-5,2-5)构造起始数据iter_1 = start=(1-s,4-s)边集加入反向边e

2017-07-30 16:56:55 662

原创 Angularjs中的ng-repeat

ng-repeat 指令用于循环输出指定次数的 HTML 元素。集合必须是数组或对象。例如:<input ng-repeat="x in records" value="{{x}}/><script>var app = angular.module("myApp", []);app.controller("myCtrl", function($scope) { $scope.record

2016-08-25 00:05:46 667

原创 windows 下Nginx+Django构造流媒体播放器

我有一个1G的移动硬盘,里面存了一堆你懂的资源。这些东西还是用手机看比较好,毕竟电脑动静太大了,而且人来人往的,也挺不好意思的。每次想看都得拷到手机里,这太不方便了,于是想出了用电脑搭建一个流媒体服务器,通过连接入局域网的手机直接点播的需求。开始考虑的是只用Django来进行读取视频文件返回给用户。这样只有文件下载完成之后才能播放,更不爽的是不能拖动进度条。通过一通搜索大法,发现Nginx可以作为一

2016-05-27 22:22:56 5688

翻译 基于任务复制的异构集群并行程序的执行

概述:在本文中,我们在一个异构的计算机集群中使用一种基于重复任务调度方法。基于重复调度方法是为了减少有相关联的任务之间的通信操作,在这里关键任务被多次分配到多台机器上,而随后的任务的开始时间也会减少。这种任务重复的过程也会不均匀地被各个系统

2015-10-07 21:25:11 1766

原创 python简单图片转字符

# -*- coding:utf-8 -*-import cv2img = cv2.imread('./14.jpg',cv2.IMREAD_GRAYSCALE)res=cv2.resize(img,(48,32),interpolation=cv2.INTER_CUBIC)for row in res: print ''.join(map(lambda x: " " if x>2

2015-09-28 18:56:57 784

原创 一行python代码

# -*- coding:utf-8 -*-a = [3,2,1,3,4,2,]a = map(lambda x: x[0] + 1, filter(lambda x: x[1]%2 == 0 , zip(a, xrange(len(a)))))不知道是哪个笔试了。。。要求用一行代码将一个列表中奇数位上的数加上1。

2015-09-25 16:31:02 740

原创 一个另类的排序——睡排序

#!/usr/bin/env python# -*- coding:utf-8 -*-import sysimport timeimport multiprocessinga = time.time()def sl(x): time.sleep(int(x)) print xdef log_run_time(func): def wrapper(*argv

2015-09-24 17:52:26 1919

原创 hbase错误集锦

问题:ERROR: java.io.IOException: Table Namespace Manager not ready yet, try again later    at org.apache.hadoop.hbase.master.HMaster.getNamespaceDescriptor(HMaster.java:3447)    at org.apache.ha

2015-07-30 15:25:26 3306

原创 LL(1) 文法

问题描述:输入:文法的多个产生式或产生式选项输出:(1)    产生式中非终结符的First集和Follow集     (2)    判断该文法是否是LL(1)文法     (3)    建立LL(1)文法的分析表     (4)    对输入的符号串进行LL(1)文法分析,并给出分析结果二、解决思路:(1)First集的求解:对G中每个文法符号XÎVT∪VN,构造

2015-07-04 22:31:38 2133

原创 正则到DFA

将正则表达式翻译成DFA的最简单算法是通过中间构造,在它之中,正则表达式派生出一个NFA,接着就用该NFA构造一个同等的DFA。。因此我们只关心两个算法:一个是将正则表达式翻译成N FA,另一个是将N FA翻译成D FA。构造一个扫描程序的自动过程可分为3步,如下所示:   (1)利用Thompson结构将正则表达式转换成NFA基本正则表达式 基本正则表达式格式a、 或,其

2015-07-04 22:24:47 1960

原创 char与int

运算时,char型会转换成有符号的int型。 如果char型变量最高位为1,那么会补上三个字节的1. 比如:char ch = 0xff;long l = 0;l|=ch;int i = 0;i|=ch;那么l = 0xffffffff;i = 0xffffffff;无符号的char则不会进行自动补1.unsigned char uch = 0xff;long l = 0;l |=

2015-04-12 09:43:06 792

原创 数组左右最大值的最大差

给定一个长度为N的整型数组arr,可以划分成左右两个部分: 左部分arr[0..K],右部分arr[K+1..arr.length-1],K可以取值的范围是[0,arr.length-2] 求这么多划分方案中,左部分中的最大值减去右部分最大值的绝对值,最大是多少? 例如: [2,7,3,1,1] 当左部分为[2,7],右部分为[3,1,1]时,左部分中的最大值减去右部分最大值的绝对值为4; 当

2015-03-25 12:13:52 1860

原创 codeforces 510D Fox and Jumping

题目大意:给定n个数,其中每次个数有一个权值,从中选中k个数,使得能利用加减法,得到数轴上所有的整数并且权值和最小,其实也就是能得到1。可想到求最大公约数里有个辗转相减法,当这K个数的最大公约数为1时,则满足第一个条件。代码:In = lambda:map(int, raw_input().split())input()ads = {0:0}def gcd(a, b):

2015-02-06 00:17:24 775

原创 python Thread初窥

在python中,多线程用到threading模块中的Thread类。start()重载了run()方法,两者是一样的。join([timeout]):如果一个线程或者一个函数在执行过程中要调用另外一个线程,并且待到其完成以后才能接着执行,那么在调用这个线程时可以使用被调用线程的join方法。当传入一个超时时间,如果到时间了还没完成,也会继续运行主线程。setDemon([flag])

2014-12-23 15:07:05 720

原创 RGB565转RGB888

在arm板上cmos得到的图象格式是RGB565格式,而在opencv上处理的格式是的BGR888。RGB565用两个字节来存一个像素点,其中三个通道分别占5个,6个,5个位。BGR888用三个字节来存一个像素点,每个通道占8个位(即一个字节)。转换时,直接对应通道,用RGB565的值补BGR888的高位。比如RGB565:11100   111001   11111转成BGR88

2014-12-11 16:18:16 4642

原创 QuickSort and HeapSort

#include #include #include #include #include using namespace std;const int maxn = 1000000;template void _QUICK_SORT(T *begin, T *end){    while(begin     {        T *p = begin;

2014-10-30 22:12:19 902 1

原创 opencv 图像偏移

简单的图像偏移

2014-10-25 21:47:10 5356

转载 OpenCV&Qt学习之一——打开图片文件并显示

摸索了一段时间了,期间杂七杂八干了很多零活,花在这上面的时间不是太多,现在回头把资料简单整理。OpenCV和Qt学习在入门阶段最大的困惑时版本不统一所带来的影响,Qt稍微好一点,OpenCV目前的大多数资料都是基于1.0版本的,而我用的2.4.3(刚更新了2.4.4)在使用上还是有很多区别的,在使用相关的资料的时候就会带来很大的困惑。 OpenCV的版本区别由于我连入门都算不上

2014-10-21 20:31:58 1926

原创 g++ opencv编译方法

g++ `pkg-config opencv --libs --cflags opencv` main.cpp

2014-10-17 20:23:09 2073

原创 latex 中文支持

\documentclass[a4paper,12pt]{article}\usepackage{CJKutf8}\begin{document}\begin{CJK*}{UTF8}{gbsn}你好!\end{CJK*}\end{document}

2014-10-10 10:04:39 1228

原创 codeforces plant 矩阵快速幂

刚开始看错题了,以为是外

2014-10-02 11:09:12 686

原创 codeforces 337C-quiz 贪心加矩阵快速幂

要保证最小的翻倍,那么就应

2014-10-02 10:55:29 559

原创 hdu 5044 tree 树链部分

一直都没有判断只有一个点的情况,一直

2014-09-29 12:31:01 739 2

原创 网络赛 Instrusive (HDU-5040)

这道题怎么读都不对劲。管

2014-09-21 21:23:24 750

原创 网络赛 Saving Tang Monk(HDU 5025)

还是见的题太少了。思路跟

2014-09-20 20:41:20 605

原创 codeforces 343D - Water Tree

这题卡了我两天了,最后受不了,还是看了风

2014-09-11 22:54:56 602

原创 codeforces 242E - XOR on Segment

这种形式的题还是不熟悉。

2014-09-08 21:33:04 887

原创 codeforces 295A - Greg and Array

对操作进行离线。统计完各个操作次数之后再进行操作

2014-09-08 10:26:59 787

原创 2014网络赛第一场 Untrusted Patrol ZOJ-3811

染色标记。对第一个伟

2014-09-07 19:54:20 680

原创 2014第一场网络赛 Pretty Poem ZOJ-3818

字符串水题。直接暴力查找。

2014-09-07 19:53:59 610

原创 codeforces 461B Appleman and Tree

题目大意为:给你一

2014-09-04 22:02:02 639

原创 Q_OBJECT的一些注意事项

今天被 Qt的一个编译错误弄得心

2014-08-24 18:15:34 1791

正则到DFA的实现

用python实现的与正则到DFA,能够用Graphviz显示图片

2015-07-04

c经典源码集合

没有什么重要的,只是想要一下积分恧民,不喜勿下哦。

2013-10-07

空空如也

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

TA关注的人

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