93. A Strictly Increasing Linked List 연결리스트가 오름차순인지 검사하는 문제. 같은 수가 나와도 오름차순이 아니므로 false를 반환한다. 96. Interleaved String 두 문자열이 주어질 때, 두 문자열에서 하나의 문자씩 붙여 하나의 문자열로 만드는 문제. 97. Check Palindrome 문자열이 중앙을 기준으로 데칼코마니인지 확인하는 문제. Two pointer를 이용하여 풀었다. 98. Anagram Checks 두 문자열이 Anagram 인지 확인하는 문제. 두 문자가 서로 구성하는 문자들과 그 문자들의 개수가 같은지 확인하는 문제다. Map 을 사용하였다. s0 문자열의 문자를 하나씩 맵에 넣는다. s1 문자열의 문자를 만들어둔 맵에서 제거해나간다. Map의 크기가 없다면 같다는 뜻이므로 true를 반환한다.
58. High Frequency 가장 많이 나온 문자의 빈도를 반환하는 문제. 맵에 넣으면서 개수를 세는데, 개수가 증가할 때마다 최대값을 기억해 두었다가 최대값을 반환했다. 60. Square of a List 오름차순으로 정렬된 배열에서 제곱하여 정렬된 배열을 반환하는 문제. 처음에는 현재 배열의 모든 값을 제곱한 뒤 정렬해주었다. 내가 푼 방법 Two pointer로 풀었다. 어차피 오름차순으로 정렬되어 있기 때문에 인덱스를 right-left 로 구해도 맨 뒤부터 1씩 줄어들어서 문제가 발생하지 않는다. 다른 사람이 푼 방법 -> 더 빠르다. 61. Recurring Character 최초로 중복되어 나온 문자의 인덱스를 반환하는 문제. set에 최초로 나온 문자를 넣은 뒤, set에 이미 존재하는 문자가 나왔다면 현재 인덱스를 반환했다. 79. Merging Two Sorte
37. Unidirectional Word Search 왼쪽에서 오른쪽으로, 위에서 아래로 탐색하면서 word가 존재하는지 찾는 문제. word의 첫 문자를 찾았을 때 그 위치부터 왼->오, 위->아래 로 탐색을 진행했다. 39. Length of a Linked List 연결리스트의 길이를 구하는 문제. while 반복을 사용하여 노드의 다음을 타고 가면서 개수를 셌다. 43. Rotate List Left by K k개의 요소를 뒤로 이동시키는 문제. k = 3 => [1,2,3,4,5,6] -> [4,5,6,1,2,3] 내가 푼 방법 k부터 끝까지 배열을 잘라서 그 뒤에 0~k-1까지 배열을 잘라서 붙였다. 다른 사람이 푼 방법 56. Nth Fibonacci Number n번째 피보나치를 구하는 문제. 피보나치 값들을 배열에 저장하여 현재 값을 구할 때, 이전의 두 수를 더해서 구
20. Largest Number By Two Times 가장 큰 숫자가 두 번째로 큰 숫자의 두 배 초과인지 묻는 문제. 오름차순으로 정렬한 뒤, 맨 뒤의 두 숫자를 비교했다. 24. Generate Primes 소수 구하기. 현재 수의 제곱근만큼만 찾아보아도 된다. 28. A Unique String 겹치는 단어가 있는지 찾는 문제. set을 사용하여 한 문자씩 넣었고, set에 현재 단어가 있다면 중복이라는 뜻이니, false를 반환했다. 29. Compress String 중복된 문자를 줄여서 하나의 string으로 줄이는 문제. stack(배열)을 사용하여 가장 최근의 문자와 현재 문자가 같은지 비교했다. 30. Rotation of Another String 하나씩 자르고 붙이면서 시도해보았는데 시간초과가 났다. 그래서 다른 사람의 코드를 보고 배웠다. 이럴 때
1. Sum of Two Numbers 5. Palindromic Integer Two pointer 16. 3-6-9 369 게임 18. Run-Length Encoding 연속되는 중복 문자의 개수를 세서 문자의 개수와 문자를 붙여 줄여서 표현하는 문제다. 첫 번째 방법 두 번째 방법 java에서는 배열의 값을 비교할 때, 배열의 범위를 벗어나는 값을 비교하면 오류가 발생했는데, js의 경우는 undefined으로 나타난다. 이는 오류가 아닌 값으로 받아들여서 오류가 발생하지 않는다. 자연스럽게 값이 다르다고 나오게 된다. 이를 이용하였다. 19. Strictly Increasing or Strictly Decresing