sort()

Algorithm/์ธํ”„๋Ÿฐ(inflearn)

[JavaScript/section 7] 07 - ์ขŒํ‘œ ์ •๋ ฌ

๐Ÿ“Œ 07 - ์ขŒํ‘œ ์ •๋ ฌ N๊ฐœ์˜ ํ‰๋ฉด์ƒ์˜ ์ขŒํ‘œ(x, y)๊ฐ€ ์ฃผ์–ด์ง€๋ฉด ๋ชจ๋“  ์ขŒํ‘œ๋ฅผ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค. ์ •๋ ฌ ๊ธฐ์ค€์€ ๋จผ์ € x๊ฐ’์— ์˜ํ•ด์„œ ์ •๋ ฌํ•˜๊ณ , x๊ฐ’์ด ๊ฐ™์„ ๊ฒฝ์šฐ y๊ฐ’์— ์˜ํ•ด ์ •๋ ฌํ•œ๋‹ค. ๐Ÿ‘ ํ’€์ด ๋ฐฉ๋ฒ• sort() ํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•œ๋‹ค. 0๋ฒˆ ์ธ๋ฑ์Šค๋Š” x, 1๋ฒˆ ์ธ๋ฑ์Šค๋Š” y์— ํ•ด๋‹นํ•œ๋‹ค. x๊ฐ’์ด ๊ฐ™์„ ๊ฒฝ์šฐ y๊ฐ’์— ์˜ํ•ด ์ •๋ ฌํ•˜๊ณ  ๋‹ค๋ฅผ ๊ฒฝ์šฐ x๊ฐ’์— ์˜ํ•ด ์ •๋ ฌํ•œ๋‹ค. ๐Ÿ“ ํ’€์ด function solution(arr) { let answer = arr; arr.sort((a, b) => { if (a[0] === b[0]) return a[1] - b[1]; else return a[0] - b[0]; }); return answer; } let arr = [ [2, 7], [1, 3], [1, 2], [2, 5..

Algorithm/์ธํ”„๋Ÿฐ(inflearn)

[JavaScript/section 7] 06 - ์žฅ๋‚œ๊พธ๋Ÿฌ๊ธฐ ํ˜„์ˆ˜

๐Ÿ“Œ 06 - ์žฅ๋‚œ๊พธ๋Ÿฌ๊ธฐ ํ˜„์ˆ˜ ํ˜„์ˆ˜์™€ ์ง๊ฟ์ด ์ž๋ฆฌ๋ฅผ ๋ฐ”๊พผ ๋ฐ˜ ํ•™์ƒ๋“ค์˜ ์ผ๋ ฌ๋กœ ์„œ์žˆ๋Š” ํ‚ค ์ •๋ณด๊ฐ€ ์ฃผ์–ด์งˆ ๋•Œ ํ˜„์ˆ˜๊ฐ€ ๋ฐ›์€ ๋ฒˆํ˜ธ์™€ ํ˜„์ˆ˜ ์ง๊ฟ์ด ๋ฐ›์€ ๋ฒˆํ˜ธ๋ฅผ ์ฐจ๋ก€๋Œ€๋กœ ์ถœ๋ ฅํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค. ๋‚˜์˜ ํ’€์ด ๋ฐฉ๋ฒ• (โŒ) ์™œ ํ‹€๋ ธ์„๊นŒโ“ ๋ฐ˜ ํ•™์ƒ๋“ค์˜ ํ‚ค ์ •๋ณด๊ฐ€ ์ฃผ์–ด์งˆ ๋•Œ ํ˜„์ˆ˜์™€ ๊ฐ™์€ ํ‚ค๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ ๋ฐ˜๋ก€๊ฐ€ ์ƒ๊ธด๋‹ค. for ๋ฌธ์„ ๋Œ๋ฉด์„œ i + 1 ๋ณด๋‹ค i ๊ฐ€ ํฐ ๊ฒฝ์šฐ๋ฅผ ์ฐพ๋Š”๋‹ค. i + 1์ด ํ˜„์ˆ˜๊ฐ€ ๋ฐ›์€ ๋ฒˆํ˜ธ๊ฐ€ ๋œ๋‹ค. ์ •๋ ฌ์„ ํ•œ ํ›„ indexOf() ํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•ด ์›๋ž˜ ํ˜„์ˆ˜๊ฐ€ ๋ฐ›์•„์•ผํ•˜๋Š” ๋ฒˆํ˜ธ๋ฅผ ์ฐพ๋Š”๋‹ค. ์ด ๋ฒˆํ˜ธ๊ฐ€ ํ˜„์ˆ˜ ์ง๊ฟ์ด ๋ฐ›์€ ๋ฒˆํ˜ธ์ด๋‹ค. ๐Ÿ‘ ๊ฐ•์‚ฌ๋‹˜ ํ’€์ด ๋ฐฉ๋ฒ• ๋ฐฐ์—ด์„ ๋ณต์‚ฌํ•˜๋Š” ๋ฐฉ๋ฒ•์—๋Š” ์—ฌ๋Ÿฌ๊ฐ€์ง€๊ฐ€ ์žˆ์ง€๋งŒ ์—ฌ๊ธฐ์—์„œ๋Š” Array.from(arr)๊ณผ arr.slice()๋ฅผ ์†Œ๊ฐœํ•ด์ฃผ๊ณ  ์žˆ๋‹ค. ๋‹จ, 1 ๋ ˆ๋ฒจ(1์ฐจ์› ๋ฐฐ์—ด)์— ๋Œ€ํ•ด์„œ๋Š” ๊นŠ์€ ..

ํ”„๋ก ํŠธ์—”๋“œ ์—”์ง€๋‹ˆ์–ด
'sort()' ํƒœ๊ทธ์˜ ๊ธ€ ๋ชฉ๋ก