taiwanboy 的部落格

心得 演算法@@

說真的 課本中的每篇演算法 其實都算是當時被研發出來的論文

要在短時間內了解他 還有一定的難度

再加上 只有虛擬碼

實在很難去瞧出原始碼

寫程式會寫到想砸電腦

 這是一們要多想的課

[@more@]

資料採礦演算法

料採礦演算法是建立採礦模型的機制。若要建立模型,演算法首先會分析一組資料,尋找特定模式和趨勢。接著,演算法會使用此分析結果來定義採礦模型的參數。

演算法建立的採礦模型可以有各種形式,包括:

  • 一組規則,描述交易中的產品如何群組在一起。
  • 決策樹,預測特定客戶是否會購買產品。
  • 預測銷售的數學模型。
  • 一組叢集,描述資料集的案例如何相關。
    詳細內容:http://msdn2.microsoft.com/zh-tw/library/ms175595.aspx

[@more@]

Huffman編碼法

"

它的編碼方式是依據字母頻率出現的高低來編碼,可改進Run-Length的缺點,在資料中字母不需連續只要出現多次,一樣可達到壓縮的目的,但由於必須將檔案從頭讀到尾,所以相當浪費時間,而FGK演算法可改進這缺點。

參考:課本[@more@]"

Run-Length編碼法

"

它的編碼方式是根據連續出現字母的個數來編碼,譬如:AAAABBBCCC
我們可用4A3B3C將其編碼,但是若單獨出現或連續出現兩次則沒必要用Run-Length編碼,因為無好處,由此可知,若要效率好,必須在資料中”連續”出現相同的字母。

參考:課本

 [@more@]"

JAVA 上加密演算法的實作

"首先產生金鑰,並儲存(這裡並沒的儲存的程式碼,可參考DSA中的方法)KeyGenerator keygen = KeyGenerator.getInstance(Algorithm);SecretKey deskey = keygen.generateKey();用金鑰加密明文(myinfo),產生密文(cipherByte)Cipher c1 = Cipher.getInstance(Algorithm);c1.init(Cipher.ENCRYPT_MODE,deskey);byte[] cipherByte=c1.doFinal(myinfo.getBytes());傳送密文和金鑰,本文沒有相應程式碼可參考DSA.............用金鑰解密密文c1 = Cipher.getInstance(Algorithm);c1.init(Cipher.DECRYPT_MODE,deskey);byte[] clearByte=c1.doFinal(cipherByte);相對來說對稱式金鑰的使用是很簡單的,對於JCE來講支援DES,DESede,Blowfish三種加密技術 

詳細資料: http://www.ibm.com/developerworks/tw/library/l-security.html

[@more@]"

心得 MusicML

"

跟著學長做完這東西,還有簡報後,

才了解JAVAXML的延展性其實很大

MusicML在網路上的資料其實非常少

所以在製作時,能做的很少

再來對於網頁的發展格式來講 他目前 還沒辦法就HTML直接呈現成網頁

只能運用軟體 讓他看起來像樂譜

"

Windows下PHP開啟XML擴展庫的方法

"windowsphp4默認是不開啟任何擴展庫的。所有的庫文件都在 x:phpextensions 文件夾下。大家都知道要開啟它們需要修改 c:windowsphp.ini 文件。 


windowsphp4默認是不開啟任何擴展庫的。所有的庫文件都在 x:phpextensions 文件夾下。大家都知道要開啟它們需要修改 c:windowsphp.ini 文件。 
  首先為庫文件指定路徑:

  extension_dir = "X:phpextensions" (也可以是相對路徑)

      然後去掉你要開啟的類庫的文件名字前的";"號:

...
;extension=php_dbx.dll
extension=php_domxml.dll
;extension=php_exif.dll
;extension=php_fdf.dll
;extension=php_filepro.dll
;extension=php_gd2.dll
...
;extension=php_w32api.dll
;extension=php_xmlr
pc.dll
extension=php_xslt.dll
...

  在這裡我們開啟了php_domxml.dll php_xslt.dll 兩個擴展庫。

  如果現在你重啟Apache服務,你將發現不能載入該動態庫文件的提示資訊!

      可是如果你按以上方法開啟php_curl.dll 或者php_gd2.dll 一些庫,就能直接載入進去。

  這是怎麼回事呢?讓我們查看x:phpinstall.txt 說明文件裏Installation of extensions on Windows的部分,它將告訴我們哪些庫可以直接載入,哪些庫需要其他庫文件方能載入,例如:

php_curl.dll CURL, Client URL library functions Requires: libeay32.dll, ssleay32.dll (bundled)
php_gd2.dll GD library image functions GD2
php_domxml.dll DOM XML functions PHP <= 4.2.0 requires: libxml2.dll
...

  發現gd2不依賴於任何其他的庫文件,而curl則依賴於libeay32.allssleay32.dll兩個文件,不過它們都已經被php所綁定了(bundled)domxml需要libxml2.dll,我們必須下載libxml.dll庫文件,將它放進x:phpdlls 路徑下,並且把該路徑加入到系統變數PATH裏,然後重啟電腦,方能正常載入!

參考資料: http://202.99.120.116:82/gate/big5/publish.it168.com/2006/0311/20060311013601.shtml

"

使用 XML: XSLT 2.0 和 XQuery 對比

"W3C 將最後的重點放在 XSLT XPath 的主要更新上。在這個過程中,他們創建了一種新的語言 XQuery,在某些專案上它可與 XSLT 匹敵。在本文中您將學習每種語言的特點,並決定在您的專案中使用哪種語言。W3C 將最後的重點放在 XSLT XPath 的主要更新上。在這個過程中,他們創建了一種新的語言 XQuery,在某些專案上它可與 XSLT 匹敵。在本文中您將學習每種語言的特點,並決定在您的專案中使用哪種語言。正在進行的標準化自從 1999 11 月面世以來,我發現 XSLTXSL 轉換語言)是可用于操作 XML 文檔的最有用的工具之一。許多可用的 API 和工具在 Java 或其他語言中使用 XML 文檔,而且我在不同項目中使用了許多 XML 文檔,但想不起有哪個 XML 項目不使用一點 XSLT 了。那麼我對 XSLT 2.0 開發有濃厚的興趣就不足為奇了。XSLT 是功能強大的語言,它高級到甚至可以處理最複雜的操作,但它也非常冗長,以至於調試和維護大型樣式表非常困難。W3C 希望解決這個問題和其他問題,所以將要發佈兩種語言:XSLT 2.0 XQuery 1.0。本文對這兩種即將面世的語言進行比較,並提供了一些有關如何有效利用這兩種語言的指導。在撰寫本文時,XSLT 2.0 XQuery 1.0 還處於 Candidate Release 狀態,該狀態是 W3C 用於不久要採用的標準的行話。多久?這取決於審查過程。大量重疊在設計上,XSLT 2.0 XQuery 1.0 有許多共同點。兩種語言都基於同一基礎:XPath 2.0。兩種語言都專用于操作 XML 文檔。兩種語言都借用腳本 概念,即對簡單任務使用解釋語言。實際上,可以使用其中任一語言達到給定目的。兩者功能相當。但是,每種語言都有不同的個性,我覺得,取決於要進行的任務,也可能取決於您的個性,您可能會更喜歡使用其中的一個,所以兩個都值得學習一下。下文將簡單介紹兩種語言的共同點和各自的特點,以便您選擇適合自己的風格和正在進行的任務的一種語言。 

參考資料: http://www.ibm.com/developerworks/cn/xml/x-wxxm34.html

"

Eclipse 資源管理

"Eclipse 不僅僅是一種 IDE。最好將其看作是構建 IDE 的平臺。Eclipse 可以歸結為管理插件的一個系統。它提供了諸如載入插件、管理插件之間的聯繫和依賴性、管理插件之間的介面(通過擴展點)等服務。顯然,一些插件提供的服務是每個應用程式都需要的,所以可以將它們作為核心的一部分。部件庫 SWT 就是其中之一。另一些插件,如 XM 插件,具有更強的專用性,則由用戶在需要的時候安裝。還有一種核心服務是資源管理,該服務由 org.eclipse.core.resources 插件提供。對於 Eclipse 來說,工作區之下的一切都是資源。資源的基本介面是 IResource(非常明確)。最常用的後代有 IFile IFolder IProject,分別代表檔、檔夾和專案。 雖然有一定的關係,但 IResource JDK 中的 File 物件實際上是兩碼事。JDK File 代表檔系統中的一個記錄,而 Eclipse IResource 在檔系統之上又添加了幾層抽象。首先,資源有屬性,屬性代表關於資源的資訊,幫助插件處理資源。比如,插件可以把 <?xml-stylesheet?> 處理指令的內容作為屬性來進行緩衝。同時將資料緩衝在屬性中,這樣就避免了每次運行插件時都需要解析檔。屬性可以存儲在記憶體中(用戶退出編輯器時將丟失)或者持久存儲到檔系統中。 此外,當添加、刪除或編輯資源時,資源和檔系統就不再同步。 IResource 記錄資源的狀態,並提供與檔系統同步的方法。更重要的是,Eclipse 可以通知插件資源和檔系統的變化。當資源與檔系統同步時,Eclipse 將傳遞給插件一個 delta,即上一次同步之後的變動列表。顯然,這樣就能夠進行智慧構建,也就是說僅對修改過的資源進行重新編譯。 

參考資料: http://www.ibm.com/developerworks/cn/xml/x-wxxm27/index.html

"

RSS在iTunes 上的擴展

"iTunes Music StoreiTunes 通過其 iTunes Music Store 提供了對播客的直接訪問。為了在存儲中集成播客,iTunes 用名稱空間 http://www.itunes.com/dtds/podcast-1.0.dtd 定義了一個擴展。iTunes 擴展非常值得注意,因為:

  • 在定義不同的時候,它沒有逃避重新定義與 RSS 類似的元素(比如 itunes:imageiTunes 需要 300×300 圖元的圖像,而 RSS 規定最大寬度為 144)。
  • 定義了新元素來增強用戶的可訪問性(比如 itunes:duration 提供了播客的播放時間,而 RSS 只提供了檔長度)。

參考資料: http://www.ibm.com/developerworks/cn/xml/x-wxxm36.html

"

訂閱文章