태그: 자바

[알고리즘] Generate Parentheses 풀이

Leetcode의 Generate Parentheses 문제를 풀어보도록 하겠습니다. 문제n 쌍의 괄호가 주어졌을 때, 괄호로 이루어진 유효한 문자열의 조합을 만들어내는 함수를 작성하라.예를 들어, n = 3 이면, 함수의 리턴 값은 다음과 같다. 1234567[ "((()))", "(()())", "(())()", "()(())", "()()()

[알고리즘] Remove Nth Node From End of List 풀이

Leetcode의 Remove Nth Node From End of List 문제를 풀어보도록 하겠습니다. 문제링크드 리스트가 주어졌을 때, 끝에서 n번째 노드를 제거 후, 그 링크드 리스트의 헤드를 리턴하라. 예를 들어, 링크드 리스트가 1->2->3->4->5이고 n이 2라면, 1->2->3->5를 리턴해야 한다.왜

Java9에서 강화된 Stream 클래스의 iterate 정적 메서드

Java9에서는 기존 Java8 때 부터 있었던 Stream 클래스의 iterate() 메서드를 오버로드(overload)한 신규 메서드가 추가되었습니다. 이번 포스트에서는 Stream 클래스의 정적 메서드인 iterate()에 대해서 얘기해보고자 합니다. 메서드 이름이 암시하듯 iterate()는 어떤 연산을 반복적으로 수행할 때 사용되는 메서드이며, 명

Java9에서 추가된 Optional 기능 소개

Java9에서 Optoinal 클래스에 몇가지 유용한 메서드들이 추가되었습니다. 이번 포스트에서는 이 새로운 메서드들을 어떻게 활용할 수 있는지 살펴보겠습니다. Java8에서 추가되었던 Optional의 좀 더 기본적인 사용법은 아래 포스트를 참고바랍니다. 자바8 Optional 1부: 빠져나올 수 없는 null 처리의 늪 자바8 Optional 2부:

Java9의 불변 컬렉션 생성

좀 더 간결한게 불변 컬렉션을 생성할 수 있도록 Java9에서 List, Set, Map 인터페이스에 새로운 팩토리 메서드들이 추가되었습니다. 불변 컬렉션이란?불변(Immutable) 컬렉션(Collection)은 아이템 추가, 수정, 제거가 불가능합니다. 따라서 신규 아이템을 추가하거나 기존 아이템을 수정또는 제거하려고 하면 java.lang.Unsupp