Time of Update: 2015-04-16
標籤:堆排序與快速排序,歸併排序一樣都是時間複雜度為O(N*logN)的幾種常見排序方法。學習堆排序前,先講解下什麼是資料結構中的二元堆積。二元堆積的定義二元堆積是完全二叉樹或者是近似完全二叉樹。二元堆積滿足二個特性:1.父結點的索引值總是大於或等於(小於或等於)任何一個子節點的索引值。2.每個結點的左子樹和右子樹都是一個二元堆積(都是最大堆或最小堆)。當父結點的索引值總是大於或等於任何一個子節點的索引值時為最大堆。當父結點的索引值總是小於或等於任何一個子節點的索引值時為最小堆。展示一個最小堆:
Time of Update: 2015-04-15
標籤:在GoF的23種設計模式中,單例模式是比較簡單的一種。然而,有時候越是簡單的東西越容易出現問題。下面就單例設計模式詳細的探討一下。 所謂單例模式,簡單來說,就是在整個應用中保證只有一個類的執行個體存在。就像是Java Web中的application,也就是提供了一個全域變數,用處相當廣泛,比如儲存全域資料,實現全域性的操作等。 1.
Time of Update: 2015-04-16
標籤:go swig 服務端的某個項目,要考慮到效能問題,之前使用基於公司架構的php,效能有瓶頸,經過調研,決定使用go。因為之前有一個關鍵模組已經使用c++實現,所以計劃使用go做HTTP容器,讓go和c++模組結合起來。 在網上調研結合方案,go內建的cgo只支援c語言,swig工具可以支援多種語言結合c++,所以決定使用swig,這裡簡要敘述下swig的使用和一些發現的要點。 1.
Time of Update: 2015-04-16
標籤:之前學習C#時候就遇到了這個問題,不過當時沒有深究。昨晚想到這個問題時候自己嘗試敲了敲代碼,結果從啟動並執行結果來看,越看越亂。在查看了一些資料的基礎上,自己總結了一下。可能會有點亂,但是自己總結出來的東西。 一:ref 關鍵字使參數按引用傳遞。其效果是,當控制權傳遞迴調用方法時,在方法中對參數所做的任何更改都將反映在該變數中。若要使用 ref 參數,則方法定義和調用方法都必須顯式使用 ref
Time of Update: 2015-04-16
標籤:本文轉載自:http://blog.csdn.net/zxz414644665/article/details/9793205當你有下面這樣一個需求的時候,擴充方法就會起到作用:在項目中,類A需要添加功能,我們想到的就是在類A中添加公用方法,這個顯而易見肯定可以,但是由於某種原因,你不能修改類A本身的代碼,但是確實又需要增加功能到類A中去,怎麼辦? 這個時候擴充方法(Extension
Time of Update: 2015-04-16
標籤:源:Delphi 中Format的字串格式化使用說明(轉)一、Format函數的用法Format是一個很常用,卻又似乎很煩的方法,本人試圖對這個方法的協助進行一些翻譯,讓它有一個完整的概貌,以供大家查詢之用:首先看它的聲明:function Format(const Format: string; const Args: array of const): string;
Time of Update: 2015-04-16
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。Different languages have certain areas where mistakes are commonly made, and which code auditors focus on. With C, you might grep for strcpy and memcpy. With ruby, you might look for regex that use ^ and $ instead
Time of Update: 2015-04-16
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。One of the hardest things about coming to a new language is figuring out which libraries you should use, especially for young languages like Go, where there are a bunch of competing options with no clear winners. As
Time of Update: 2015-04-16
這是一個建立於
Time of Update: 2015-04-16
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。golang 函數作為類型package mainimport "fmt"type A func(int, int)func (f A)Serve() { fmt.Println("serve2")}func serve(int,int) { fmt.Println("serve1")}func main() { a := A(serve) a(1,2)
Time of Update: 2015-04-16
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。golang 中有兩個記憶體配置機制 :new和make,二者有明顯區別.new:用來初始化一個對象,並且返回該對象的首地址.其自身是一個指標.可用於初始化任何類型make:返回一個初始化的執行個體,返回的是一個執行個體,而不是指標,其只能用來初始化:slice,map和channel三種類型 package main import ( "fmt" ) func main() {
Time of Update: 2015-04-16
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。最近,由於一篇“為什麼我不會捨棄Python投奔Go語言(英文)”的部落格,我收到了大量的郵件,這篇文章中,作者說Go語言除了“用傳回值來處理異常錯誤”這點外,其它的都非常好。我想寫出一點東西,解釋一下Go語言為什麼這樣做,這會對大家都有用。本文作者:Russ Cox在Go語言中,規定的方式是,函數返回錯誤資訊。這沒什麼。如果一個檔案並不存在,op.Open函數會返回一個錯誤資訊。這沒什麼。如果你向你一個中斷了的網路連接裡寫資料,
Time of Update: 2015-04-15
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。 針對Go語言的資料庫編程,Go標準庫中針對此並沒有對應的資料庫操作包來直接操作目前主流的資料庫,但在database/sql中封裝了標準的資料庫操作介面,其中包括有: sql.Register 用於 go包中init函數中,用來註冊資料庫驅動如(不同資料庫註冊方式有所差異): https://github.com/mattn/go-sqlite3func init()
Time of Update: 2015-04-16
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。 go run hello.go直接將編譯,連結和運行合為一個步驟,運行完成之後不會看到任何中間檔案和可執行檔。 只產生編譯結果而不自動運行可以使用go build命令: go build hello.go運行之後會看到程式目錄下出現.exe檔案 執行完go build命令之後可以將構建成功的包安裝在特定目錄下。 go install
Time of Update: 2015-04-16
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。This post is a post-mortem of a Go production system crash. We’ll use the logs to drill down into the guts of Go’s network source code to find a leak that affected a core part of our stack at Timehop. The root cause
Time of Update: 2015-04-16
標籤: 就在上個月,國內四大上市旅遊公司都紛紛公布了自己的第四季度財報,虧損一片,景象十分慘重。不過在這個一片虧損的現象背後卻出現了一個怪圈,去哪兒市值近日連續大漲,短短半個多月漲幅超過55%。目前去哪兒的市值已經超過50億美元,位置中國互連網公司的第14位,中概股的第9位。 對此,很多人表示了不解和困惑,同樣是虧損,去哪兒憑什麼能夠獲得資本如此親睞?帶著系列疑問,劉曠經過仔細調查過後發現,去哪兒之所以會出現大幅度的虧損,其主要原因就是因為把錢花在了市場的擴張上,導致成本大增。但同時也正是因
Time of Update: 2015-04-16
標籤: 360搜尋上線已經有一周的時間了,雖然時間不長,但是來勢洶洶,大有捨我其誰的氣勢,根據站長之間的統計,360瀏覽器已經取得了10%的市場份額,一躍成為國內第二大搜尋引擎,就連360董事長周鴻禕都大呼太意外了,那麼,為什麼360搜尋會在短短几天的時間內,甚至在還未進行一絲一毫推廣的情況下,能夠取得這麼高的市場份額呢,到底是曇花一現還是潛力無限呢,接下來劉宗陽就粗淺的談談自己的看法。 首先說說360推出自己的搜尋引擎的初衷。 360為什麼會推出自己的搜尋引擎呢,周鴻禕是這麼解釋的,請大
Time of Update: 2015-04-15
標籤: 相信大家已經注意到了,程式員的大部分時間都花在電腦桌前編程,這會損害程式員的健康。其實不需要多麼複雜的養生,你只需每天做一些小小的改變,就可以擺脫病痛、保持健康。變換姿勢 雖然站立桌、昂貴的椅子和一些基於人體工程學的玩意的確很酷,哪怕LINUS(linux創始人)都在踏步機前工作,而事實上你並不需要這些。 關鍵是要變換姿勢,如果你保持一個姿勢數個小時不活動,你的脖子在數天后疼痛是必然的。每15分鐘站起、坐下、跳、蹲下、活動一下手腳、放鬆一下眼睛;每小時變換一下姿勢;每天走一走,爬一
Time of Update: 2015-04-15
標籤:在web.xml中配置如下代碼<filter> <filter-name>characterEncodingFilter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <init-param>
Time of Update: 2015-04-15
標籤:1: 編譯 (1): ./genMakefiles linux (2): make 2: 伺服器環境 伺服器端是一個支援RTSP server的H.264的網路攝影機; 3: 運行 openRTSP ./openRTSP -d 20