Computer >> 컴퓨터 >  >> 프로그램 작성 >> JavaScript

JavaScript를 사용하여 배열에서 유일한 고유 문자열 찾기

<시간/>

문제

문자열 배열을 취하는 JavaScript 함수를 작성해야 합니다. 배열의 모든 문자열에는 동일한 문자 또는 반복되는 문자가 포함되어 있으며 하나의 문자열에만 다른 문자 집합이 포함되어 있습니다. 우리 함수는 해당 문자열을 찾아서 반환해야 합니다.

예를 들어

배열이 -

인 경우
[‘ba’, 'abc', 'acb', 'bac', 'foo', 'bca', 'cab', 'cba' ]

그러면 필요한 문자열은 'foo'입니다.

문자열에는 공백이 포함될 수 있습니다. 공백은 중요하지 않으며 공백이 아닌 기호만 중요합니다. 예를 들어 공백만 포함된 문자열은 빈 문자열과 같습니다. 배열에는 3개 이상의 문자열이 포함되어 있습니다.

예시

다음은 코드입니다 -

const arr = ['ba', 'abc', 'acb', 'bac', 'foo', 'bca', 'cab', 'cba' ];
const findOnlyUnique = (arr = []) => {
   const first = [];
   for(i = 0; i < arr.length; i++){
      first.push(arr[i].toLowerCase().replace(/\s/g, '').split(''));
      for (j = 0; j < arr[i].length; j++){
         first[i].sort();
      }
   }
   const second = [];
   for (k = 0; k < arr.length; k++){
      second.push(first[k].join());
   }
   second.sort();
   const third = [];
   if (second[1] !== second[second.length - 1]) {
      third.push(second[second.length - 1]);
   }else{
      third.push(second[0]);
   }
   const last = [];
   for(let n = 0; n < first.length; n++){
      last.push(first[n].join(','));
   }
   return (arr[last.indexOf(third[0])]);
};
console.log(findOnlyUnique(arr));

출력

foo