ì¤ë³µ ìë ìì ì°¾ìë´ê¸°
arrì ë°°ì´ì
ëë¤.
ë°°ì´ ë´ ì ì¼í ìì를 ì°¾ì주ë í¨ì unique(arr)를 ìì±í´ë³´ì¸ì.
ìì:
function unique(arr) {
/* your code */
}
let strings = ["Hare", "Krishna", "Hare", "Krishna",
"Krishna", "Krishna", "Hare", "Hare", ":-O"
];
alert( unique(strings) ); // Hare, Krishna, :-O
í ì¤í¸ ì½ëê° ë´ê¸´ ìëë°ì¤ë¥¼ ì´ì´ ì ëµì ìì±í´ë³´ì¸ì.
ìíë 기ë¥ì 구ííë ¤ë©´ ë°°ì´ ìì ê°ê°ì ëìì¼ë¡ ìëì ê°ì íì¸ìì ì ì§íí´ì¼ í©ëë¤.
- ìë¡ì´ ë°°ì´(ê²°ê³¼ ë°°ì´)ì ë§ë¤ê³ í´ë¹ ììê° ê²°ê³¼ ë°°ì´ì ë¤ì´ê° ìëì§ íì¸í©ëë¤.
- ì ì¡°ê±´ì ë§ì¡±íë¤ë©´ í´ë¹ ììë 무ìíê³ , ê·¸ë ì§ ìë¤ë©´ í´ë¹ ìì를 ê²°ê³¼ ë°°ì´ì ëí´ì¤ëë¤.
function unique(arr) {
let result = [];
for (let str of arr) {
if (!result.includes(str)) {
result.push(str);
}
}
return result;
}
let strings = ["Hare", "Krishna", "Hare", "Krishna",
"Krishna", "Krishna", "Hare", "Hare", ":-O"
];
alert( unique(strings) ); // Hare, Krishna, :-O
ìì ê°ì´ ìì±íë©´ ìíë ëµìì ë§ë¤ ì ìì§ë§, ì±ë¥ìì 문ì ê° ììµëë¤.
result.includes(str) ë©ìëë result를 ìííë©´ì ê° ììì strì ë¹êµíë©° ì¼ì¹íë ê°ì´ ìëì§ ê²ìí©ëë¤.
resultì ììê° 100ê°ì¸ ìí©ìì strê³¼ ì¼ì¹íë ììê° ìë¤ë©´ result.includes(str) ë©ìëë result ì 체를 ìííë©´ì ì íí 100ë²ì ë¹êµë¥¼ ì§íí ê²ëë¤. resultì 길ì´ê° 10,000ì´ë¼ë©´ ë§ ë²ì ë¹êµê° ì¼ì´ëê² ì£ .
ìë°ì¤í¬ë¦½í¸ ìì§ì ìëê° ìë¹í ë¹ ë¥´ê¸° ë문ì ë§ ë² ì ëë 문ì ê° ëì§ ììµëë¤.
ê·¸ë°ë° for문ì ì¬ì©í´ arrì ììë§ë¤ í
ì¤í¸ë¥¼ ì¤íí ê²½ì°ë ì´ì¼ê¸°ê° ë¬ë¼ì§ëë¤.
arr.lengthê° 10000ì´ë©´ 10000*10000, 1ìµ ë²ì ë¹êµê° ì¼ì´ë기 ë문ì´ì£ . ì ë§ í° ì«ìì
ëë¤.
ë°ë¼ì ì í´ëµì ë°°ì´ì 길ì´ê° ì§§ì ëë§ ì¬ì©íì기 ë°ëëë¤.
ì í´ëµì ì´ë»ê² íë©´ ìµì í í ì ìëì§ì ëí´ìë 맵과 ì ì±í°ìì ë¤ë¤ë³´ëë¡ íê² ìµëë¤.
í ì¤í¸ ì½ëê° ë´ê¸´ ìëë°ì¤ë¥¼ ì´ì´ ì ëµì íì¸í´ë³´ì¸ì.