原创 使用 python 操作 Oracle (一)

準備工作: 在機器上安裝Oracle Database,這裏版本是11g,據說也可以只安裝客戶端。然後下載對應的cx_Oracle,使得python能夠支持oracle,使用python連接Oracle的第一次測試可能會出問題,一個典型的

原创 記python開發網絡爬蟲所遇問題

最近幾天一直在寫網絡爬蟲,用的是python,圖的是方便省事,不過中間確實遇到過幾次讓人頭疼的問題,現記錄如下: 一.建立網絡鏈接的問題 使用的是python提供的urllib2模塊,用urllib2.urlopen()函數建立鏈接,該

原创 編程珠璣 習題 十二章

注:以下皆爲個人理解,非標準答案 12.5.1: bigrand:rand函數隨機產生15位,那麼用兩次rand函數再拼接起來就形成了30個隨機位randint(l,u):將rand出的數映射到l,u 之間即可,一個實現方法是mod(u

原创 python 的sitecustomize.py

sitecustomize.py 是python中的一個特殊腳本,可以放在目錄下的任意位置,不過一般放在home\Lib\site-packages下面,當python開始運行時會先運行該腳本中的代碼,因此可以用來設置一些default

原创 幾道算法題--記下

一. 海量數據求中位數,比如10G的int64的數,求排序後最中間的數 首先,若能全部放入內存中,那麼可以使用類似快排的算法,每次保留包含中位數的那段數據,直到找到中位數;那麼海量數據顯然無法一次性放入內存,如何每次減少數據呢?一個自然的

原创 轉:我來告訴你爲什麼中國做科研最好的學生會去轉行

發信站: 水木社區 (Wed Nov 14 17:54:24 2012), 站內   今天看到中科院數學所的程老先生以真名實姓所寫的一篇惋惜自己的學生轉行的博文,讓我感觸至深。程老師的那位25歲的學生,已經發表了十幾篇期刊論文,獲得過院長

原创 “...最好的學生會去轉行”續:我爲什麼逃離科研

轉自人人 在來美國的前一天晚上和程老師吃飯的時候,師兄告訴我們程老師下午發的博客已經上科學網首頁了,但當時也只有40多個回覆而已,我們也沒有在意,畢竟程老師的博文經常上科學網首頁。當晚我們並沒有繼續討論我工作選擇的事情,而是像往常一樣隨便

原创 近鄰搜索之制高點樹(VP-Tree)

引子 近鄰搜索是一種很基礎的又相當重要的操作,除了信息檢索以外,還被廣泛用於計算機視覺、機器學習等領域,如何快速有效的做近鄰查詢一直是一項熱門的研究。較早提出的方法多基於空間劃分(Space Partition),最具有代表性的如kd-t

原创 中國剩餘定理解法

問題表述   《孫子算經》卷下第二十六問:“今有物,不知其數。三、三數之,剩二;五、五數之,剩三;七、七數之,剩二。問物幾何?答曰:二十三。” 即 x%3=2;x%5=3;x%7=2;  》》  x=23+3*5*7*k 表述成定理

原创 大數的c++實現,包括加減乘法

採用vector<int>實現的大整型數類,重載了 +,-,*,+=,-=,*= 操作符;通過了 poj 2389 大數乘法的測試數據;別的不多說,上代碼,供大家學習交流。 #ifndef BIG_INT_HEAD #define B

原创 N個雞蛋放入M個籃子且能組合出1~N所有的數

貌似是一道面試題,要求籃子不能爲空,且要求出所有可能的放法。 如8個雞蛋放入4個籃子,可以放 1,1,2,4;也可以放 1,2,2,3。 分析: 不妨以遞增的次序來排放雞蛋,即若第一次放1個,第二次至少放1個。 在這個限制下,設

原创 python一個URL拼接的寫法

此方法來自網絡,很強大 from urlparse import urljoin from urlparse import urlparse from urlparse import urlunparse from posixpath i

原创 插入最少字符使得只含數字,+,(,)的算式合法化

比如輸入  2(+(5+1( ) ,那麼 2+(1+(5+1+(1)))  是一種解法。 注意:插入的也只能是這4種字符。 ( )非法,((12))合法 這裏提供一個思路,就是首先處理括號,再處理其它;並且添加的括號只加在開頭和結尾;這

原创 習題6.28

題目:輸入數組x,a;根據a中的值作爲序列號重新排列x,要求只能使用swap操作,時間複雜度O(nlogn) 對a數列進行快排,所有的swap操作也對x數組進行相同操作即可。 擴展題:若a=[1,3,5,7,9,...,2,4,6,8

原创 POJ 2054---Color a Tree

題目鏈接:poj2054 很好的一道貪心題,是邊計算邊貪心,此外,理解思路是難點一,實現是難點二,可以說思路和實現都很需清晰的頭腦。 #include <iostream> using namespace std; /*** 好題!di