You are given two strings s and t.
String t is generated by random shuffling string s
and then add one more letter at a random position.
Return the letter that was added to t.
두 개의 문자열인 s와 t가 주어졌다.
문자열 t는 문자열 s에서 랜덤하게 하나의 문자가 추가된 것이다.
문자열 s에서 추가된 문자를 리턴하라.
두 문자열을 비교해 다른 문자를 찾아내는 문제였다.
문자열을 배열로 만들고 for문으로 순회하며 다른 값을 찾는다면 리턴하고자 했다.
var findTheDifference = function(s, t) {
if(!s) return t;
const sArray = s.split('').sort((a,b) => a-b);
const tArray = t.split('').sort((a,b) => a-b);
let result;
for(let i = 0; i < t.length; i++) {
if(sArray[i] !== tArray[i]) {
result = tArray[i];
return result;
}
}
};
하지만 정답을 제출에 실패했고, sort 메서드를
문자도 정렬할 수 있도록 변경해줬더니 문제가 해결되었다.
/**
* @param {string} s
* @param {string} t
* @return {character}
*/
var findTheDifference = function(s, t) {
if(!s) return t;
const sArray = s.split('').sort();
const tArray = t.split('').sort();
let result;
for(let i = 0; i < t.length; i++) {
if(sArray[i] !== tArray[i]) {
result = tArray[i];
return result;
}
}
};
Reference
[MDN - sort 메서드] https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/sort
'Algorithm' 카테고리의 다른 글
Leetcode 414. Third Maximum Number (0) | 2023.03.09 |
---|---|
Leetcode 409. Longest Palindrome (0) | 2023.03.08 |
LeetCode 387. First Unique Character in a String (0) | 2023.03.02 |
Leetcode 374. Guess Number Higher or Lower (0) | 2023.02.28 |
Leetcode 338. Counting Bits (0) | 2023.02.24 |