我有一個看起來像這樣所有可能的秩的參考散列:確定鄰居是否存在?
hash = {
bronze: 0,
silver: 1,
gold: 2,
platinum: 3,
diamond: 4
}
我得到一個給定的等級,以及其他現有隊伍的數組,我需要確定「鄰居」爲給定的存在秩。我會盡力的例子:
given_rank = 'gold'
existing_ranks = ['silver', 'platinum']
這應返回true
- 銀直接下黃金和鉑金是直接在上面 - 這兩個鄰國都存在。
given_rank = 'gold'
existing_ranks = ['silver', 'diamond']
這應返回false
- 上側
這裏鉑缺少這就是我現在有:
有沒有更有效的/高效/紅寶石的方式來解決這個問題?
你是指'(n2 - n1).abs == 2'? – nsave
@nsave:好點,更新。 – tokland