Javascript – How to Shuffle an array

You can use the following function to shuffle a Javascript array. Kudos to Ashley Pond V. The author applies the Fisher-Yates shuffle algorithm which is also known as the Knuth shuffle in Javascript.

function fisherYates(myArray) {
  var i = myArray.length;
  if (i == 0) return false;
  while(--i) {
    var j = Math.floor(Math.random()*(i+1));
    var tempi = myArray[i];
    var tempj = myArray[j];
    myArray[i] = tempj;
    myArray[j] = tempi;
  }
}

Done =)

Reference: Randomize arrays in JavaScript with the Fisher-Yates shuffle algorithm

名言六十

有一些人,會因為地鐵加價而不滿,會因為樓價高企而憤慨。但是,他們又喜歡以政治中立為榮,或是政治冷感為傲。

他們的人生目標是如何用最低的價錢計劃今年聖誕該去哪個東南亞國家旅行,長遠一點可能是所謂的人生大計,即係儲錢計劃買樓結婚生小孩。這個地方未來是怎樣,從來不會是他們思考的問題。

或許他們會覺得「你們大熱天時去遊行,我安坐家中開冷氣乘涼也坐享其成」,為自己的Free Rider的生活態度而自我感覺良好(Game Theory的Prisoner Dilemma? 向他們說只會是對牛彈琴)。

對於這些人,我衷心祝福他們,還有他們的下一代,當他們的下一代問到「為什麼要把我帶來這個像牢房的地方」時,請記著自己今天身在何方。

相對他們,至少,今天在這個地方的我們,問心無愧!

Arbitor Ma

一顆原子的時空之旅 – 從大霹靂到生命誕生的故事

作者: 勞倫斯.克勞斯 Lawrence M. Krauss

有冇想過你現在呼吸的一口空氣當中的其中一顆氧原子也曾出現在凱撒大帝臨死前的一口氣? 又可能出現在米高佐敦一次絕殺對手所吸的一口氣?

作者用一顆氧原子的經歷,又大霹靂敘述到智人生命的出現,一切都是化學作用與幸運女神的巧妙安排,當中經歷更過多次物種滅絕的浩劫,而劫後新的物種才能夠成功繁衍,可以說是真正的置誅死地而後生。

現在地球所擁有氧、碳、水份子等,很多都是地球成形的初期被殞石撞擊所帶來的,還有碳與氧在地球的循環,使現在大氣中有穩定的溫室氣體免得地球進入冰河時期,一切一切都是大自然的神奇安排。

但人類的出現使到這多年的平衡出現傾斜,燃燒化石燃料所產生的二氧化碳使到溫室效應上升,只要現在地球的氣溫再上升十度,海洋的水份大量蒸發,這些水份子與二氧化碳同樣是溫室氣體,到時的溫室效應將會一發不可收拾,這個藍色的星球將會跟鄰居金星一樣,變得乾熱與死寂。

希望活在安逸的我們都能夠對自己的生命有所反思,大自然現在給我們的一切並不是必然的。

這本書內容涵蓋物理、天文、化學、生物、地理,是一本非常廣泛的科普書籍,極力推薦給對宇宙的過去有興趣的你。

Dream BIG and go for it =)