반응형 분류 전체보기294 [Easy] 정렬된 두 링크드 리스트 합치기 문제: 정렬된 두 링크드 리스트를 합쳐서 하나의 정렬된 링크드 리스트로 반환해라. 예제:입력: 1->3->4, 1->5->6출력: 1->1->3->4->5->6 링크드 리스트 클래스 구조는 다음과 같다. public class ListNode { int val; ListNode next; ListNode(int x) { val = x; } }구현되어야 할 함수의 선언은 다음과 같다.ListNode mergeTwoLists(ListNode l1, ListNode l2); 풀이:재귀함수를 이용하면 간단히 풀 수 있는 문제이다.첫 번째 노드의 값을 비교해서 더 큰 값이 작은 값의 next가 되면 된다.그리고 작은 값의 next와 큰 값과 다시 비교해서 merge하는 과정을 계속 반복하여 null이 나올 때 까.. 2017. 12. 13. [Easy] 유효한 괄호 문자열 찾기 문제: 주어진 문자열이 유효한 괄호인지 검사하는 함수를 작성하라. 괄호의 종류는 다음 세 가지가 있다. "( )", "{ }", "[ ]" 각 괄호의 우선순위는 존재하지 않지만 다른 괄호가 열려있는 중간에 닫는 괄호가 온다면 유효하지 않는 문자열이 된다. 예를 들어 "( [ ] )" 이 문자열은 유효한 것이다. 하지만 "( [ ) ]" 이 것은 유효하지 않은 문자열이다. 풀이:이번 문제는 스택을 이용하면 간단히 해결 가능한 문제이다. 괄호 문자 중 여는 괄호가 나오면 스택에 push를 하고 닫힌 괄호가 나올 때 스택에서 pop을 해서 두 쌍이 유효한 것 인지 비교한다. 두 쌍이 제대로 이뤄져 있다면 true두 쌍이 서로 다른 괄호의 종류이거나 스택에 더이상 괄호가 없는데 pop을 시도한 경우는 false.. 2017. 12. 13. [Easy] 공통 접두사 찾기 문제: 주어진 문자열 배열에서 가장 긴 공통 접두사를 찾아라. 예)입력 값 : {"abc", "abcd", "ab"}결과 : "ab" 풀이:각 배열에 들어있는 문자열을 첫 글자부터 하나씩 비교해 나간다. 만약 다른 글자를 포함한 것이 있거나 더이상 글자가 없다면 중단해서 그 이전 까지의 문자열이 common prefix이다. Java code: class Solution { public String longestCommonPrefix(String[] strs) { if(strs.length == 0) return ""; StringBuilder result = new StringBuilder(); boolean same = true; for(int i = 0; i < strs[0].length(); i+.. 2017. 12. 13. [Easy] 로마숫자를 정수형으로 변환하기 문제:입력받은 로마 숫자를 정수형 값으로 변환하여 반환해라. 입력 값의 타입은 문자열이고 출력 타입은 integer형이다.입력받는 로마 숫자의 제한은 (3999)까지 이다. 로마 숫자 표I 1 V 5 X 10 L 50 C 100 D 500 M 1000 풀이이 문제는 로마 숫자의 구성만 알면 쉽게 풀 수 있다. 각각의 알파벳은 고유의 숫자 값을 가지고 있고 주의해야할 점은 8은 VIII로 표현되지만 9는 IV로 표현 된다는 점이다. 예를 하나 더들면 40은 XL이다. 이 점을 활용하여 우선 모든 문자의 값을 별도의 배열에 저장한다.예를 들어 DCXXI 를 숫자로 바꿔보자.D는 500, C는 100, X는 10, I는 1이다. 각 글자별로 배열에 저장하면 다음과 같다. 문자D C X X I 값500 100 .. 2017. 12. 13. [Easy] 배열에서 입력 받은 특정 항목 삭제하기 문제: 정렬되지 않은 배열에서 함께 입력 받은 값을 가지는 배열안의 항목을 삭제한다. 반환 값은 새로 만들어지는 배열의 길이이다. 다른 메모리 공간을 사용하지 않고 입력 받은 배열을 수정해서 해결해야 한다. 또한 출력되는 길이까지 배열 안에 삭제되어야할 항목이 존재하지 않아야 한다. 그 이외의 항목은 어떤 값이 와도 상관없다. 예제입력 값: [3,2,2,3], 3반환 값: 2배열의 상태 : [2, 2, x, x] x는 어떤 값이 와도 상관없음. 풀이:우선 출력해야할 길이 lengh를 0으로 초기화 한다. 그리고 배열을 처음부터 탐색해가며 삭제해야할 값이라면 다음 인덱스로 넘어가고 아니라면 array[lengh] 와 현재 가리키고 있는 인덱스의 값과 치환한다. 그 다음 length를 증가시키면 최종적으로 .. 2017. 12. 13. [Easy] Reverse String 문자열 반전 문제: Reverse String 주어지는 문자열을 반전시켜 반환해라 예를 들어 입력 값이 "hello"라면 반환 값은 "olleh" 이다. public String reverseString(String s); 해결법:이 문제의 해결 방안은 두개의 포인터를 이용하면 간단히 해결 가능하다. 문자열은 배열의 형태를 가지고 있고 각각은 인덱스로 접근 가능하다. 우리는 이 문자열을 뒤집어야 하므로 가장 왼쪽 문자와 가장 오른쪽 문자를 서로 바꾸고 그 다음 하나씩 가운데를 향해가며 문자를 교환하면 된다. 예를 들어 "hello" 문자열은 다음과 같이 생겼다. 문자열h e l l o 인덱스0 1 2 3 4 가장 왼쪽 인덱스, 즉 begin은 0이고, 가장 오른쪽 인덱스 end는 4이다. 이 begin과 end에 해.. 2017. 12. 12. 포항 지진으로 인한 2018 수능 연기 지난 15일 오후 29분 31초 경북 포항시 북구 북쪽 9km지점에서 규모 5.4의 지진이 발생했다고 기상청은 발표했다. 이번 지진은 지난 14개월전 경주에서 발생한 진도 5.8의 지진에 이어 역대 두 번째로 큰 규모의 지진이었다. 이 후 교육부는 학생들의 안전과 형평성을 위해 2018 수능시험을 1주일 연기한다고 긴급 발표했다. 2017. 11. 16. To 부정사 영어를 하면서 to 부정사에 대해서만 잘 알게 되면 글을 자연스럽게 이어나가며 말할 수도 있고, 정말 많은 부분에서 활용이 가능해집니다. 이처럼 중요한 to 부정사 꼭 알아봐야겠지요? to를 사전에서 한 번 찾아보겠습니다. https://en.oxforddictionaries.com/definition/to 옥스포드 사전을 찾아보면 제일 처음으로 전치사(preposition)이라고 나옵니다. 제일 간단하게 우리가 어딘가를 갈 때 I go to~ 이런식으로 말을 하지요. 이 때의 to가 전치사의 to 입니다. 하지만 오늘 얘기할 것은 이 전치사 to와는 다른 녀석입니다. 사전에서 쭉쭉 내려 보면 Infinitive marker라고 나옵니다. to + Infinitive(to + 동사 원형), 즉 동사 원형.. 2017. 11. 10. [독일/볼프스부르크] 자동차의 도시 아우토슈타트 Autostadt in Wolfsburg 볼프스부르크는 니더작센 주의 도시이다. 이 도시는 주민 12만명의 작은 도시이다. 이 곳이 특별한 이유는 폭스바겐 본사와 공장이 있기 때문이다. 또한 폭스바겐은 공장 바로 옆에 Autostadt라는 박물관을 운영하고 있다. Autostadt는 Auto(자동차)와 Stadt(도시)의 합성어로 자동차의 도시라는 뜻을 가지고 있다. 자동차에 관심이 있는 사람들이라면 잘 알고 있을 것이다. 폭스바겐 그룹은 많은 계열사들을 거느리고 있는 거대한 자동차 생산 그룹이다. 폭스바겐 뿐만 아니라 람보르기니, 포르쉐, 아우디, 스코다, 세아트, 벤틀리, 스카니아, MAN 등등 이러한 차들을 가지고 전시관들을 만들었고 (모든 브랜드가 있지는 않다) Zeithaus라는 건물에는 최초의 벤츠 차량 등 자사 브랜드 이외의 과거의.. 2017. 11. 9. 이전 1 ··· 23 24 25 26 27 28 29 ··· 33 다음 반응형