0
A
回答
0
在具體的水平上,它是蘋果和橘子。但在抽象層面,這是一個有趣的問題。
數據壓縮處理冗餘,這是數據和信息之間的差異。它試圖通過修改信息的編碼來減少不必要的冗餘。 通常,這種編碼的工作方式是採用一個公共子字符串並製作引用它的代碼,而不是重複該子字符串。
編譯器優化(速度)尋求減少不必要的週期。 一種方法是,如果某些計算的結果需要兩次或更多次, 確保它保存在某個地址或寄存器(記憶)中,因此可以在更少的週期內重新使用它。
編碼數字的另一種形式是所謂的「一元符號」,其中只有一個數字,數字通過重複表示。例如,數字「三」和「四」是「111」和「1111」,取N個數字。 該代碼通過切換爲二進制進行了優化,如在「011」和「100」中,這取得了log(N)數字(當然是基數2)。
與此類似的編程是線性和二分搜索的區別。 線性搜索需要O(N)比較。每個比較都可以產生大量的信息或者很少 - 平均遠遠少於一點。 二進制搜索需要O(log(N))比較,每個比較產生一個比特。
有了一些想法,應該有可能找到其他類似的東西。
+0
我的問題是,他們都旨在消除冗餘,同時保留代碼/數據的語義。 –
相關問題
- 1. 優化和壓縮HTML
- 2. 代碼優化;測量代碼段之間的時間
- 3. 壓縮數據庫和SQL Server數據庫之間的區別
- 4. 優化Lucene的壓縮比
- 5. Hadoop和數據庫之間的關係
- 6. 使用drupal優化和壓縮mysql數據庫
- 7. iphone:編碼數據壓縮或壓縮代理?
- 8. 我如何壓縮/優化此代碼(jQuery)?
- 9. 數據壓縮和解壓縮
- 10. 套接字壓縮數據的優點
- 11. Deflater和GZip壓縮之間的區別
- 12. 歸一化壓縮距離C代碼
- 13. JS縮小:壓縮代碼
- 14. 一對一關係數據庫關係可能的優化
- 15. 壓縮html代碼
- 16. 壓縮Python代碼
- 17. QR代碼壓縮
- 18. JavaScript代碼壓縮
- 19. 如何確定2組數據之間的優化關聯?
- 20. 隨時間變化的代碼優化
- 21. 關於GCC編譯x86_64的代碼和C代碼優化
- 22. c#大量數據的代碼優化
- 23. 用代碼優先定義與現有數據庫的關係
- 24. LLVM IR指令和源代碼行之間的映射關係
- 25. .NET使用壓縮和非壓縮數據壓縮文件
- 26. 縮短/優化一些代碼
- 27. 這段代碼如何優化縮小?
- 28. 如何優化已壓縮的圖像?
- 29. gzencode不壓縮的代碼
- 30. 壓縮Magento的HTML代碼
你不能認爲它是一種有損的東西,因爲它不是有損的,而且霍夫曼編碼不是一種編譯器優化技術。你的問題沒有任何意義。 – EJP
我投票結束,因爲你不清楚你在問什麼。 –
http://aggregate.org/TechPub/lcpc2002.pdf –