4.
๋ฌธ์์ด์ ์ ๋ ฅ๋ฐ์ ๋ฌธ์์ด์ ๊ตฌ์ฑํ๋ ๊ฐ ๋จ์ด์ ์ฒซ ๊ธ์๋ก ์ด๋ฃจ์ด์ง ๋ฌธ์์ด์ ๋ฆฌํดํด์ผ ํฉ๋๋ค.
function firstCharacter(str) {
let words = str.split(' ');
let first = '';
if (str.length === 0) return '';
for(let i = 0; i < words.length; i++) {
first += words[i][0];
}
return first;
}
๋์ด์ฐ๊ธฐ๊ฐ ์๋ ๋ฌธ์์ด์ ๋ ์ด์ฐ๊ธฐ ๊ธฐ๋ถ์ผ๋ก ๋ถ๋ฆฌํด์ฃผ๊ณ ,
๋ฐ๋ณต๋ฌธ์ ์ด์ฉํด์ ๊ฐ ๋จ์ด์ ์ฒซ๋ฒ์งธ ๋ฌธ์๋ฅผ ์ถ๋ ฅํด์ฃผ์๋ค.
<ํ๋ฆฐ ์ฝ๋>
function firstCharacter(str) {
let arr = str.split(' ')
let firstWord = arr.reduce((acc, cur) => {
if(!acc[cur[0]]) {
acc[cur[0]] = [];
}
acc[cur[0]].push(cur);
return acc;
}, {});
return acc.join()
}
์ฒ์์ ์๊ฐํ๋ ์ฝ๋์ธ๋ฐ ๋ฌด์จ ์๊ฐ์ผ๋ก ์ด๋ ๊ฒ ํ๋์ง๋ ์ ๋ชจ๋ฅด๊ฒ ์ง๋ง,,
๋ด๊ฐ ํ๊ณ ์ถ์๋ ๊ฑด ใ ใ ์ผ๋จ spilt์ผ๋ก ๋ถ๋ฆฌํ ์์ด๋ค์ด ๋ฐฐ์ด๋ก ๋ค์ด๊ฐ์ผ๋,
๊ทธ ๋ฐฐ์ด์ reduce๋ฅผ ์ด์ฉํด์ ์ฒซ๋ฒ์งธ ๊ธ์๋ฅผ ๋ฐฐ์ด๋ก ๋ค์ ๋ฃ์ด์.. join์ผ๋ก ๊บผ๋ด์ค๊ณ ์ถ์๋ ๋๋์ด์๋ ๋ชจ์์ด๋ค.
์ด๊ฑฐ๋ก๋ ์ฑ๊ณตํ ์ ์์์ง ์์์๊น..์ถ์ง๋ง reduce์ ๋ํ ํ๋ฆฟํ ๊ฐ๋ ์ผ๋ก ์ธํด ๋๋ ์๋์ง ๋ชปํ๊ณ ์คํจ.. ใ _ใ
์๋์ ์์๋ฅผ ๋๊ธฐ๋ก ํ๋ค... ์๊ทธ๋๋ ๋ ๋์น๋ ์ฒด๋ ฅ์ ํ๊ณ๋ฅผ ๋๋ผ๋ ์์ฆ์ธ๋ฐ ์์นจ์ด๋ผ ์ ์ด ๋ ๊นฌ ๋ฏ ใ _ใ
๋ญ ๊ทธ๋์ ๊ฒฐ๊ตญ ํต์งธ๋ก ๋ค์๊ณ ๋ฏธ๋ จ์์ด ์๋ก ์ฝ๋๋ฅผ ์งฐ๋ฐ๋... ๊ธ์์ผ ์ด์ผ๊ธฐ..
'Algorithm > DailyCoding' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[22.09.28] Daily Coding 7 (0) | 2022.09.29 |
---|---|
[22.09.27] Daily Coding 6 - charAt() , slice() (0) | 2022.09.27 |
[22.09.26] Daily Coding 5 - join() (0) | 2022.09.26 |
[22.09.22] Daily Coding 3 (0) | 2022.09.22 |
[22.09.21] Daily Coding 1, 2 (0) | 2022.09.21 |