Hash function

一些据说还凑活的hash function,需要的时候可以拿来主义~

1. 最简单的

unsigned long hash(unsigned char *str)
{
    unsigned int hash = 0;
    int c;
    
    while (c = *str++)
        hash += c;
    
    return h[......]

Read more

Tags :

The Mighty Dictionary in Python

The Mighty Dictionary是PyCon 2010上Brandon Craig Rhodes报告的题目。借用他的题目,本文整理了Python内建类型dict的一些所谓Mighty的知识。

故事起源于the order of keys in a dict

d = {'a': 1, 'b': 2, 'c': 4}
print d.keys()  #['a', 'c',[......]

Read more

Tags : ,

冒泡…

终止了快7个月的实习,我又自由啦。

忙了很久了,博客从寒假开始重新开张。

这一次的技术节奏是….毕设?…. or….Python?….or….other funny things….

期待!~

Tags :

说说最近在做的事

1. 《淘宝技术这十年》

浏览了快半本书了,大体上就是听故事,不过故事还不错。总体上讲了一堆大牛们怎样从无到有创造淘宝这个网站的,从买来现成的技术,到使用收费服务,最后到开创新技术,经历了一个漫长的过程。觉得最牛逼的就是,事情发展到一定瓶颈了,既然别人的技术都不好,就自己动手造轮子吧~然后大牛们站出来了,轮子造好了还算ok,有问题?慢慢改进吧=。=

2. 《Structure and[……]

Read more

Tags : , ,

生鱼片、鱼子酱和铁板青菜

昨天和之前实习公司的一伙人去莘庄小聚,去海の幸吃了一顿日式的自助。

人生第一次品尝了生的肉食,并没有产生特别的喜好,我怕吃多了闹肚子,还是收敛了一点。

那儿的蒸蛋,还是不错的。一整个蛋敲开一个口,放在铁板上蒸熟,然后撒上点鱼子酱,味道很棒。据那边的厨师说,鱼子酱还是冰岛进口的,超级贵,虽然我不是很相信,但是总之味道很不错,鱼子嚼碎的的那一瞬间有种独特的口感,还是甜的~

印象深刻的[……]

Read more

Tags :

仿函数,函数对象,functor

仿函数,函数对象,functor
重载函数调用的运算符即可,很简单~

#include <functional>
#include <iostream>
using namespace std;

template<typename T>
class myplus{
public:
	T operator()(T a, T b){
		r[......]

Read more

Tags :

子进程socket继承问题

昨天实习的时候遇到这样一个问题,抽象起来如下:

有一个进程A,它是一个全局监控进程,监控进程B。
进程B是一个局部监控进程,监控C,C是由B fork出来的子进程。
C向B汇报,B向A汇报。
因为进程A和其他进程在不同机器上,所以所有的操作都是通过json rpc的远程调用执行的。
假设B监听11111端口,A通过这个端口与其通信。
现在我手动kill B,理论上的现象应该1111[……]

Read more

Tags : , ,

引用计数智能指针的简单实现

「摘自 《The C++ Standard Library – A Tutorial and Reference》」

#ifndef COUNTED_PTR_HPP
#define COUNTED_PTR_HPP

/* class for counted reference semantics
 * - deletes the object to which it refers[......]

Read more

Tags :

C++中重载超类方法部分版本的办法

有这样一个程序的样例:

#include "iostream"
using namespace std;

class Foo
{
public:
	virtual void overload() {
		cout << "Foo overload" << endl;
	}

	virtual void ov[......]

Read more

Tags :

Python中处理json和file open写文件中文的问题

a={u"哈哈^_^": 121}
b=json.dumps(a, ensure_ascii=False)
file = codecs.open("test", "w", "utf-8")
file.write(b)
file.close()

解决~

Tags : ,