Time of Update: 2018-12-07
今天看演算法分析是,看到一個這樣的問題,就是在一堆資料中尋找到第k個大的值。 名稱是:設計一組N個數,確定其中第k個最大值,這是一個選擇問題,當然,解決這個問題的方法很多,本人在網上搜尋了一番,尋找到以下的方式,決定很好,推薦給大家。 所謂“第(前)k大數問題”指的是在長度為n(n>=k)的亂序數組中S找出從大到小順序的第(前)k個數的問題。 解法1:我們可以對這個亂序數組按照從大到小先行排序,然後取出前k大,總的時間複雜度為O(n*logn +
Time of Update: 2018-12-07
OpenGL Driver ArchitectureYang Jianjyang@cad.zju.edu.cn1 OpenGL Installable Client Driver Windows下OpenGL Driver有三種類型,可安裝的用戶端驅動程式(Installable Client Driver ,縮寫為ICD),微驅動(minidriver)和獨立驅動程式。獨立驅動程式主要是為一些特殊的圖形系統設計,這些圖形系統的能力相對比較強大,整個系統的主要目的為圖形應用,目前已經不多見。
Time of Update: 2018-12-07
關於LIS(Least Increasing
Time of Update: 2018-12-07
在上一篇介面開發中,我講解了將系統介面還原,還原表單的本來面貌。但是有的博友提出表單閃爍,這確實是個問題,原來自己開發的時候也是出現了這個問題。花了兩天的時間,重要修改了個大概,將表單繪畫的次數和表單的重新整理程度進行了修改。首先看看效果: 這是主表單,在主表單中不僅修改了表單的重新整理率,而且添加了一個自訂的表單按鈕,使用了很多的顏色來顯示,模仿了Foxmail的介面顯示,但是對於除了主表單外的其他表單,這些是不存在的。如顯示的子表單:
Time of Update: 2018-12-07
大家還記得之前在LINQ TO SQL的對象——關係映射(ORM)一節中所提到過的一個內聯屬性InheritanceMapping,它用於建立實體類之間的繼承關係。那麼今天就詳細講解一下LINQ TO SQL中是如何?單表繼承的。內容不會太複雜,但比較重要,就作為LINQ
Time of Update: 2018-12-07
(一)充分利用MSDN,因為我個人覺得它勝過任何一本編程參考書;
Time of Update: 2018-12-07
初見這個題目,許多人可能會對自己相當滿意:“我還是很好學的”。真的是這樣嗎?個人之見,有不少人其實並不像他們想象的那麼好學,尤其是那些有了一定經驗,在某些方面有些過人之處的“聰明”之人,隨著技術水平和自信心的積累,往往丟失了好學之心,而他們自己卻渾然不知。對此,去年Infoq 刊登的一片新聞《初心,聆聽之術》談到了如何保持學習心態的問題。或許有人要說,好學與否,真的就那麼重要嗎?工作如期、按質完成不就得了。好學不好學,無非就是其自身修鍊的心態發生了變化,難以進步而已。確實,對於一般的程式員來說,
Time of Update: 2018-12-07
MFC擴充同MFC 本身一樣是一組建築在MFC類庫上面VC++類,OCX(OLE/Active X控制項),它是一種32位的用於替換16 位的Visual Basic extension(VBX)的控制,OCX 是基於Microsoft 的對象嵌入與串連技術(OLE),這種技術允許基於二進位的對象介面互動,所以 OCX 同MFC 擴充具有完全不同的概念,“MFC 擴充是一個代碼級的和編譯時間的使用者介面,OCX 是一種二進位級和運行時的使用者介面。”
Time of Update: 2018-12-07
上篇中寫了一個ProgressWindowForm表單,主要使用線程來處理系統中執行的大資料量操作的一個多線程解決方案,本次將其修改一下,使用線程去處理系統載入過程中的一些處理事項。 介面圖如下:
Time of Update: 2018-12-07
轉自:餘魚同的個人空間 MathType是一款強大的數學方程式編輯器,當安裝完成(或者使用綠色版)開啟程式時,常常彈出缺少字型的對話方塊,如下: MathType需要一個新版的MT Extra(TrueType)字型 請重新安裝MathType(用CD或下載安裝)以便擷取正確的字型 這時,一些符號就無法使用。下面介紹解決以上問題的辦法。1,進入檔案夾X:\Windows\Fonts(X為系統硬碟盤符,一般是C),如果有MT
Time of Update: 2018-12-07
今天這一節,注意要講C++中的命名空間和標頭檔的命名規則。也是C++這一基礎系列的最後一節。首先感謝在學習C++的一路上,有這麼多關注這系列的博友們的陪伴和協助。正因為有了你們的建議和指導,使我對C++有了更深的認識和更大的興趣。這個系列結束之後,我會繼續學習和關注C++的一些實際應用。 大家都知道一個大型軟體通常是由多個模組組成的,這些模組往往是由不同的人合作完成,最後組成一個完整的程式。假如不同的人分別定義了函數和類,放在不同的標頭檔中,在主檔案需要用到這些函數和類時,用#includ
Time of Update: 2018-12-07
好久沒有寫部落格了,今天閑下來無聊,就簡單寫了一個小程式,名稱叫做ColorSpy。以前經常使用別人的ColorSpy進行取色,決定非常有意思,今天就自己簡簡單單的實現一個,也為自己練練手。 ColorSpy簡單來說就是對螢幕的取色,其中有幾個痛點: 1、擷取滑鼠在螢幕上的位置: 2、擷取滑鼠在螢幕上位置的地區圖片。 3、擷取滑鼠指向的顏色。 4、C#中使用Hook,來顯示和拷貝顏色。
Time of Update: 2018-12-07
父類: class CParent { .... }; 繼承類的聲明比較特別: class CChild : virtual public CParent { .... } 請問,這個"virtual"是什麼作用及含義? --------------------------------------------------------------- 這個"virtual"是什麼作用及含義? 證明這個CParent是CChild 的虛基類 虛基類 的 作用 虛基類是指:class SubClass
Time of Update: 2018-12-07
其實LINQ在文法上很多都是運用了C#語言的一些特性,C#語言從2.0升級到3.0,並沒有升級C#2.0的運行平台CLR,只是在原有文法基礎上添加了新的特性,這些特性依賴於C#3.0的編譯器。使用C#3.0的編譯器編譯過的代碼可以在支援C#2.0的運行平台CLR上運行,即完全可以在.NET2.0平台上運行編譯過的.NET3.0代碼。C#2.0中的泛型,匿名方法,以及C#3.0中的Lambda運算式、運算式樹狀架構以及擴充方法都是LINQ的基礎。這一節我將介紹有關C#2.0中的泛型、委託、匿名
Time of Update: 2018-12-07
ExtJs是一個非常好的用戶端JavaScript,他的很多空間都可以自訂而且也可以擴充。 在ExtJs的官方網站上有一個帶圖片的下拉式清單,其中擴充了ExtJs的Combo,名稱叫做IconCombox,官方地址為: http://www.extjs.com/learn/Tutorial:Extending_Ext_Class_Chinese
Time of Update: 2018-12-07
題目:在一個檔案中有 10G 個整數,亂序排列,要求找出中位元。記憶體限制為 2G。唯寫出思路即可(記憶體限制為 2G的意思就是,可以使用2G的空間來運行程式,而不考慮這台機器上的其他軟體的佔用記憶體)。 關於中位元:資料排序後,位置在最中間的數值。即將資料分成兩部分,一部分大於該數值,一部分小於該數值。中位元的位置:當樣本數為奇數時,中位元=(N+1)/2 ;
Time of Update: 2018-12-07
NativeWindow是.net Framework提供的一個底層的類。微軟官方的解釋為:NativeWindow Provides a low-level encapsulation of a window handle and a window procedure.說道這些也相當於沒有說,因為NativeWindow到底是幹什麼的也沒有說清楚,意思就是一個低層級的對表單控制代碼和表單過程的一個封裝。後來查詢了很多的資料才明白了其中的意義。 資料來源: http:/
Time of Update: 2018-12-07
經過上面兩篇的介面開發,我們使用Windows的Hook技術,成功的將系統中的表單的訊息截取,並添加了自己的事件處理常式,這篇文章就是通過我們對這些訊息的處理的第一步,設定表單的樣式和表單的Region。 Region對於表單來說是一個非常重要的概念,他就是Windows分配給表單顯示的地區,所以,我們第一步就是根據我們的需要設計我們的表單地區。而對於Windows表單地區的設定,WndProc中的STYLECHANGED,SHOWWINDOW,SIZE,WINDOWPOSCH
Time of Update: 2018-12-07
1.建構函式初始化列表以一個冒號開始,接著是以逗號分隔的資料成員列表,每個資料成員後面跟一個放在括弧中的初始化式。例如:View Code 1 Example::Example() : ival(0), dval(0.0) {} //ival 和dval是類的兩個資料成員上面的例子和下面不用初始化列表的建構函式看似沒什麼區別:View Code 1 Example::Example()2 3 {4 5 ival = 0;6 7 dval = 0.0;8 9
Time of Update: 2018-12-07
前一篇給表單設定了Region,將表單的FormBorderStyle設定成了None,然後修改了表單的顯示地區Region。一個本來完好的表單讓我們設定成為了一個空白的沒有任何色彩的表單,這對我們的介面開發好像是背到而行,有點南轅北轍了。其實不然,只有將表單上的所有原有的資訊給去除掉,才能還原表單的本來面貌,給表單一個新面貌。 這篇就對表單的介面開發設計一個新面貌。 我在介面開篇的開篇就已經說過,介面開發其實就是修改表單的兩個地區,Client Area和None