演算法實際運用

2021-05-27 11:12:54 字數 650 閱讀 7623

我們在linux中用select實現多路復用中有幾個巨集 fd_set fd_clr fd_zero在這裡充分利用到了集合的概念和演算法:

因一項工作而卡住需等待這項工作時,導致別的工作不能完全進行(這樣浪費資源和時間)怎麼處理呢 這裡有幾種解決的方法

其中一種就是每隔一段時間進行迴圈檢測看這項工作是否完成,這種的利弊我們暫且不談:我們來說另一種集合的方法,(不知怎麼就想到了函式指標表也記在這裡吧也許什麼時候靈感出現)

將現在能做的工作打表,然後依次執行執行完後再次檢測當前時刻哪些工作準備好了,再次重複

)這樣就盡可能減少應為阻塞而導致工程進度的耽擱

無失真壓縮常見的為huffman演算法和lzw(lenpel-ziv &welch)壓縮演算法,huffman這個大家學過吧,功能是建立最優huffman樹,使總長度變短。正好滿足壓縮的要求,對於lzw演算法

經常使用。舉個例:

對原始資料abccaab

cddaaccdb進行lzw壓縮 

原始資料中,只包括4個字元(character),a,b,c,d,四個字元可以用乙個2bit的數表示,0-a,1-b,2-c,3-d,從最直觀的角度看,原始字串存在重複字元:abccaabcddaaccdb,用4代表ab,5代表cc,上面的字串可以替代表示為:45a4cddaa5db,這樣是不是就比原資料短了一些呢!

js實際運用

實現效果 點選新增,左邊框中的選中項消失,新增到右邊的框中 點選移除,右邊的不消失,但會增加到左邊的框中。c autoeventwireup true codefile default2.aspx.cs inherits default2 兩段js碼,第乙個為新增,第二個為移除 移除中,建立乙個新物...

ThreadLocal的實際運用

之前在利用zookeeper實現分布式鎖時候,使用了concurrenthashmap儲存currentpath等,現在有了threadlocal,我們可以直接使用threadlocal了 把myzookeeperlock的類進行修改,其他 不變,依然可以用 public class myzooke...

迴圈巢狀的實際運用

迴圈是一直做重複的事情,直到達成一定的條件就自動跳出迴圈的一種判斷語句。迴圈在現實生活中也有很多例子,例如在聊天時為了讓對方知道自己的愛意,要求自己輸入25遍的4 i love you 這一句話時,我們可以有兩種選擇去做,第一種就我們最原始的方法 手動敲。一邊敲一邊自己數,然後敲著敲著發現不是覺得無...