[알고리즘] 배열 만들기3
배열 만들기3 배열 arr의 첫번째 구간에 해당하는 배열과 두번째 구간에 해당하는 배열을 앞뒤로 붙여 새로운 배열을 만들어 return. arr intervals result [1, 2, 3, 4, 5] [[1, 3], [0, 4]] [2, 3, 4, 1, 2, 3, 4, 5] 나의 풀이: function solution(arr, intervals) { var answer = [] for(i = 0; i < intervals.length; i++) { for(j = intervals[i][0]; j
[알고리즘] l로 만들기
I로 만들기 알파벳 소문자로 주어진 myString 이 주어진다. l 보다 앞서는 알파벳을 I로 변환하여 리턴 myString result "abcdevwxyz" "lllllvwxyz" "jjnnllkkmm" "llnnllllmm" 나의 풀이: function solution(myString) { var before = ["a","b","c","d","e","f","g","h","i","j","k"] var array = myString.split(""); return array.map(v => before.includes(v) ? v = "l" : v).join("") } 풀면서도 내가 배열을 직접 작성하여 조금 비효율적인것 같아서 includes 메소드 대신 부등호를 사용하여 다시 풀어보았다. fun..
[알고리즘] 배열의 원소만큼 추가하기
배열의 원소만큼 추가하기 arr 배열의 요소만큼 반복하는 새 배열을 리턴 arr result [5, 1, 4] [5, 5, 5, 5, 5, 1, 4, 4, 4, 4] [6, 6] [6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6] [1] [1] 나의 풀이: function solution(arr) { var answer = [] for(i = 0; i < arr.length; i++) { for(j = 0; j < arr[i]; j++) { answer.push(arr[i]) } } return answer; } 반복문을 사용하여 arr[i] 만큼 반복하여 새 배열에 추가하였음.
[알고리즘] 가까운 1 찾기 / indexOf
가까운 1 찾기 idx 보다 인덱스 값이 큰 수 중 가까운 1의 인덱스 값을 리턴, 값이 없을 경우에는 -1 리턴 arr idx result [0, 0, 0, 1] 1 3 [1, 0, 0, 1, 0, 0] 4 -1 [1, 1, 1, 1, 0] 3 3 나의 풀이: function solution(arr, idx) { for(i = idx; i arr.indexOf(1,idx); indexOf 메소드를 이용하여 1의 값을 찾되, idx 부터 시작하는 값을..