演算法練習:有版本號的key-value store
要求 寫一個kv store,需要實現按版本查找的method,簡單的每次take新snapshot,就把map複製一次,放到list裡面,這樣按版本找可以實現O(1)。如果想省空間可以次snapshot只存diff。查的時候要把每個snapshot都查一次,就變成O(num_snapshots)。 Python 實現
程序|生活|學到就是賺到
要求 寫一個kv store,需要實現按版本查找的method,簡單的每次take新snapshot,就把map複製一次,放到list裡面,這樣按版本找可以實現O(1)。如果想省空間可以次snapshot只存diff。查的時候要把每個snapshot都查一次,就變成O(num_snapshots)。 Python 實現
最近想在Mac上裝個wordpress,自然得先安裝Apache2, PHP, MySQL。 簡單科普一下這些軟體 Apache:Web server, 處理http請求PHP: 用來寫網站邏輯的語言MySQL: 資料庫 WordPress就是一個用PHP寫得程序,用PHP寫的邏輯決定怎樣處理http request,而數據就寫在MySQL裡面。 本來還想著用MAMP,這個是我很多年前用過的一個Mac軟體,做個個界面打包管理以上軟體。最近發現改成收費的了。於是Google一下直接在Mac OS上手動安裝,畢竟Mac OS就是UNIX,不會太難。結果發現Mac OS基本都自帶了。MAMP徹底沒什麼用了。 本文用的是Mac OS Catalina。 Apache2 啟動Apahce2 瀏覽器打開http://localhost/,確認工作。 讓Apache2可以使用PHP 編輯文件, 把下面這行的注釋取消(刪除開頭的「#「) 重啟Apache2 找到Document Root。Document Root就是硬碟上存放html或者PHP文件的地方。 可見Mac OS里document root在/Library/WebServer/Documents。 測試PHP正常工作 phpinfo.php內容如下 然後打開網頁http://localhost/phpinfo.php測試,能看到顯示PHP信息就表示成功了。 Mac OS下安裝MySQL 到MySQL官網下載。我下的是這個 打開dmg文件以後運行裡面的pkg文件安裝。中間需要給root設置密碼。 安裝目錄在 確定mysql…
Read more
家裡爆水管怎麼辦? 在美國當home owner,就總會碰到這樣或那樣的問題。爆水管就是其中一項。這不,今天就碰到了。我家前院的一個水龍頭因為老化,直接就給沖噴了。前院直接就水漫金山了。而且禍不單行的是,那個總閘好像還壞了。我還算鎮靜,想到水表那應該有開關。結果發現那個開關是個長條形的,根本擰不動。只好打電話給當地自來水公司。幸好我們的墨西哥鄰居出手相助,用了一個超大的扳手給關上了。因為自來水公司他們只來幫關閘,不管維修,所以就再打電話給他們說不用來了。他們反應很慢,不知道還要等幾個小時呢。 救命神器 後來我買來新的水龍頭換上,但是鄰居不在,總不能老麻煩人家。如果Google了一下這個閥門應該有什麼工具。結果還真給我找到了。這個工具叫water meter key 如果家裡curb side的水表的閥門是這種長條類型的,強烈建議花10幾刀給家裡備上這麼個救命神器。真到爆水管的關鍵時候能把總閘關了。叫一次plumber起碼得幾百刀了,而且要多少你都得給。我不知道叫自來水公司要不要錢,這次我是取消了,不然說不定事後給張賬單也說不準。
前段一直是我的短板, 沒有太多機會系統學習. 最近想做一個股票分析系統的webapp, 於是就在網上找合適的javascript library做data visualization. D3.js以前用過, 覺得太過底層, 寫起來太麻煩. 於是發現了ECharts, 好像是國內大神寫得, 已經是Apache project, 非常厲害. 於是follow了這個tutorial. 裡面有些小細節我覺得初學者可能會卡住, 這裡我寫得詳細一點. 安裝npm npm是node package manager的意思, 是用了管理安裝javascript libraries的. 相當於Python里的pip. 安裝可以看我前面的文章. 安裝ECharts 首先給項目建立一個新的directory 在項目directory里安裝echarts library 完成後directory里會有那麼幾個東西 開始Coding 在項目directory裡面添加一個html file叫main.html, 內容如下調用echart header裡面的這行相當於Python的import 現在directory內容如下 用瀏覽器打開main.html. 在Mac里可以在terminal里用 網頁顯示如下, 還是挺酷的….
Read more