연결리스트의 역을 구하는 문제이다. ListNode를 매개변수로 받는 reverseList메서드의 틀이 주어진다. Problem : class Solution { public ListNode reverseList(ListNode head) { } } 이 때, ListNode의 정의가 다음과 같이 주어진다. public class ListNode { int val; ListNode next; ListNode() {} ListNode(int val) { this.val = val; } ListNode(int val, ListNode next) { this.val = val; this.next = next; } } 풀이는 reverseList메서드에 작성하면 된다. Solution : 재귀함수를 이용해 연결리..
각 자릿수가 하나의 노드로 이루어진 두 리스트노드의 합을 리스트노드로 반환하는 문제이다. 두 ListNode를 매개변수로 받는 addTwoNumbers메서드의 틀이 주어진다. Problem : class Solution { public ListNode addTwoNumbers(ListNode l1, ListNode l2) { } } 이 때, ListNode의 정의가 다음과 같이 주어진다. public class ListNode { int val; ListNode next; ListNode() {} ListNode(int val) { this.val = val; } ListNode(int val, ListNode next) { this.val = val; this.next = next; } } 풀이는 ad..
주어진 두 문자열 s와 t가 애너그램 관계인지 여부를 반환하는 문제이다. String s와 t를 매개변수로 받는 isAnagram메서드의 틀이 주어진다. Problem : class Solution { public boolean isAnagram(String s, String t) { } } 풀이는 isAnagram 메서드에 작성하면 된다. Solution : 1. 두 문자열의 길이가 다르면 애너그램 관계일 수 없으므로, false를 사전 반환한다. 2. 알파벳 길이(26)의 숫자 배열을 선언하고, 첫번째 문자열 s의 각 알파벳을 Ascii 코드표를 활용하여 배열에 카운팅한다. ('a'는 Ascii코드 상 97에 해당하지만, 메모리 사용 감소를 위해 - 'a'를 하게 되면 0번 인덱스에 위치시킬 수 있다..