原创 BOP - 1的數目

文章後面的擴展問題: 對於二進制,統計1的數目。 f(1)  = 1 f(10) = 10 f(11) = 100 … What is f(n)?   Analysis:  by different bit     n (binary

原创 C++0X Basic Knowledge

C++0x增加了諸多的feature,使C++儼然變成了新的語言,遂拙記一些。 Moving semantics C++ has supported copying object,but it is less efficient whe

原创 最大最小堆介紹

最大最小堆 1.     定義: 最小最大堆是一棵完全二叉樹,且其中每個元素有一個key數據成員。樹的各層交替爲最小層和最大層。根結點在最小層。設x是最小最大堆的任意結點。若x在最小(最大)層上,則x中的元素的key值在以x爲根的子樹的

原创 Polay定理總結

polya定理主要就是解決一類着色問題,或者說是同構計數問題。對Ω的n個目標用m種顏色着色的圖象集種類數。定理的內容:Pólya定理:設G={p1,p2,…,pg}是Ω上的一個置換羣,C(pk)是置換pk的循環的個數,用M中的顏色對Ω中的

原创 VC++在release下對return的優化

編譯環境 VS2008, release模式。 今天,對於如下的code進行debug,單步運行。 此時index的值是1,我們一般會認爲code走到36行,然後退出。 但是,實際上,code走到38行,當時我們就凌亂了,難道code中

原创 XOR Linked List

An ordinary doubly linked list stores addresses of the previousand next list items in each list node, requiring two add

原创 關於C++構造函數拋出異常

The code like this is inherently vulnerable to memory leaks(if the constructor failed)? class Foo { public: Foo()

原创 理解JavaScript Closure

援引StackOverflow上的一個帖子:http://stackoverflow.com/questions/12930272/javascript-closures-vs-anonymous-functions 關於closure,

原创 霧裏看花集錦

有的code咋看起來,感覺沒啥問題, typedef bitset<16> mybit; int _tmain(int argc, _TCHAR* argv[]) { mybit test_bs; test_bs.set(1, tr

原创 幾個 JavaScript Questions

Javascript 本身就有很多獨特的語言特性。由此,相關的問題也很有意思。接下來,我列舉幾個,並簡單分析一下。 我是在chrome下測試的。。。 var a = 1, b = function a(x) { x

原创 蓄水池算法簡介

從N個元素中隨機抽取k個元素,但是N不定。每個元素抽取的概率是k/N。 解答:先選中前k個,從k+1到最後一個元素,以1/i (i = k+1, k+2, ... N)的概率選中第i個元素,並且隨機替換一個原來選中的元素。 '''

原创 湊錢問題

Q: 有足夠量的2分、5分、1分硬幣,請問湊齊1元錢有多少種方法? 我們從簡單情況開始分析,假如有足夠量的1分硬幣,請問湊齊1分錢有多少種方法?毫無疑問,答案是1。然後,湊齊2分錢有多少種方法?湊齊n分錢有多少種方法?答案均是1。 接

原创 Hash 函數

Hashing                 H(key)= key %M Linear probe                 Slot = (home+i)%M                                

原创 最長公共子字符串 (Longest Common Substring)

問題:字符串 "ABABC", "BABCA" 最長公共子字符串是 "ABC"? solution1: suffix tree 建立suffix tree時間複雜度是O(N), 查找公共子字符串的代價是O(m+n), m和n分別是兩個字

原创 二分搜索的應用

Binary Search 總所周知,在處理一些實際問題中也有很好的應用。 舉例如下: 問題:一個數組是由一個遞減數列左移若干位形成的,比如{4,3,2,1,6,5} 是由{6,5,4,3,2,1}左移兩位形成的,在這種數組中查找某一個