如何統計乙個js陣列中奇數元素的個數呢?
這是群友提出的乙個問題,大部分群友給出的是遍歷 然後對2取模,得到最終結果。
這樣的寫法是最容易想得到的,那麼有沒有其他思路呢?
這裡我提供另外一種思路,我們知道奇數其實就是以 1 3 5 7 9 作為末尾結尾的數字,那麼只要統計這些數字出現的次數就夠了,但是光這樣統計容易誤算,所以我們可以先用逗號拼接起來,連著逗號一起計算,由於js沒有php那麼方便的能用substr_count 函式統計字串出現次數,所以我們直接採用正則替換,計算長度差得到個數,**如下:
這種思路也是我突發奇想,感覺還是有些巧妙的,畢竟這道題雖然簡單,可是假設這個陣列非常龐大,那麼其迴圈難度也就加大,而且每次都要取模運算,浪費了大量效能,畢竟偶數是不需要參與計算的,但是不參與計算又不知道其為偶數,所以這裡直接採用替換,然後根據長度差計算即可知道到底有多少奇數!
C C 統計兩個陣列中不同元素的個數
c c 統計兩個陣列中不同元素的個數 統計兩個陣列中不同元素的個數 陣列中不含重複元素 include stdafx.h include stdio.h include stdlib.h includeusing namespace std int match2array int parray1,i...
JS中陣列去重並統計個數
總結了幾個簡單的陣列去重,和統計重複資料的方法 用兩個for迴圈進行比較,如果陣列中存在相同的屬性,那麼刪掉後出現的重複屬性,因為在js中如果用delete刪除的僅僅是屬性值,並沒有將這個屬性全部刪除,其標籤還在,其值變為empty undefine 故需要再加入乙個判斷。var arr 2,4,1...
從陣列中刪除奇數元素
include include include 要求 從很大的陣列中刪除刪除某些特定的元素 思路 由於是陣列,不要嘗試直接刪除,否則會導致大量記憶體拷貝,最好的方法就是元素交換 從很大的陣列中刪除奇數元素 void remove cardinal std vector vec vec.resize ...