壓縮稀疏
對稀疏矩陣進行壓縮存儲目的是節省存儲空間。
存儲矩陣的一般方法是採用二維數組,其優點是可以隨機地訪問每一個元素,因而能夠較容易地實現矩陣的各種運算。
但對於稀疏矩陣而言,若用二維數組來表示,會重復存儲了很多個0了,浪費空間,而且要花費時間來進行零元素的無效計算。所以必須考慮對稀疏矩陣進行壓縮存儲。
(1)壓縮稀疏擴展閱讀
優點
稀疏矩陣的計算速度更快,因為MATLAB只對非零元素進行操作,這是稀疏矩陣的一個突出的優點。假設矩陣A,B中的矩陣一樣,計算2*A需要一百萬次的浮點運算,而計算2*B只需要2000次浮點運算。
因為MATLAB不能自動創建稀疏矩陣,所以要用特殊的命令來得到稀疏矩陣。算術和邏輯運算都適用於稀疏矩陣。對於一個用二維數組存儲的稀疏矩陣Amn,如果假設存儲每個數組元素需要L個位元組,那麼存儲整個矩陣需要m*n*L個位元組。
❷ javaScript中利用Array filter() 方法壓縮稀疏數組
什麼是稀疏數組
數組元素的索引不一定要連續的,它們之間可以有空缺。每個javaScript數組都有一個length屬性。針對非稀疏數組,該屬性就是數組元素的個數;針對稀疏數組,length比所有元素的個數要大。
Array
filter()
方法會跳過稀疏數組中缺少的元素,它的返回數組總是稠密的。
(1)壓縮稀疏數組的空缺:
var
dense
=
sparse.filter(
function(currentValue)
{
return
true;
}
);
(2)壓縮稀疏數組的空缺,並且刪除
undefined
和
null
元素:
var
dense
=
sparse.filter(
function(currentValue)
{
return
currentValue
!==
undefined
&&
currentValue!=
null;
}
)
總結
以上所述是小編給大家介紹的JavaScript中利用Array
filter()
方法壓縮稀疏數組,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
您可能感興趣的文章:javascript稀疏數組(sparse
array)和密集數組用法分析JavaScript中的稀疏數組與密集數組[譯]