-
[알고리즘] #Reverse Linked List■ Algorithm 2019. 7. 7. 15:14
출처 : https://leetcode.com/problems/reverse-linked-list/ Reverse Linked List - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 문제 Reverse a singly linked list. Example: Input: 1->2->3->4->5->NULL Output: 5->4->3->2->1->NULL Follow up: A linked list can be reversed either iteratively..
-
[알고리즘] #Invert Binary Tree■ Algorithm 2019. 7. 7. 14:08
출처 : https://leetcode.com/problems/invert-binary-tree/ Invert Binary Tree - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 문제 풀이 이 문제도 재귀함수를 이용해서 풀어주면 된다. 먼저 가장 최하단에 있는 왼쪽 자식과 오른쪽 자식의 값까지 내려간 뒤, 두 값을 바꿔준다.
-
[알고리즘] #Single Number■ Algorithm 2019. 7. 6. 23:56
출처: https://leetcode.com/problems/single-number/ Single Number - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 문제 Given a non-empty array of integers, every element appears twice except for one. Find that single one. Note: Your algorithm should have a linear runtime complexity. C..
-
[알고리즘] #Merge Two Binary Trees■ Algorithm 2019. 7. 6. 20:56
출처: https://leetcode.com/problems/merge-two-binary-trees/ Merge Two Binary Trees - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com Given two binary trees and imagine that when you put one of them to cover the other, some nodes of the two trees are overlapped while the others are no..
-
[Java] Java 8 에서 추가된 기능 사용해보기■ Back-End/- Java 2019. 7. 2. 15:50
Java 8이 나온지 한참 지났지만, 실제로 새롭게 추가된 기능을 실무에 활용해본 적은 별로 없어서 이번에 정리해보려고 한다. 새로운 것들이 항상 좋은 건 아니지만, 그렇다고해서 오래 전부터 사용하던 것만 고집해서는 안된다. Java 8에서 새롭게 추가된 기능은 아래와 같다. Lambda 표현식 Default Method 함수형 인터페이스 Stream Optional 날짜 관련 클래스 추가 병렬 배열 정렬 String Joiner 앞으로 직접 사용해보면서 내용을 정리해나가려고 한다. Lambda 표현식 / 함수형 인터페이스 / Stream 클래스 React를 이용해 ES6로 코드를 작성하면서 Lamda 표현식을 사용한 적이 있었다. 그런데 Java에서 Lambda 표현식을 사용할 수 있다는게 많이 어색했..
-
[Java] String.concat(), '+'연산자, StringBuilder, StringBuffer에 대하여■ Back-End/- Java 2019. 7. 2. 13:56
일반적으로 문자열을 연결할 때 자주 사용하는 방법은 (1) String.concat(); (2) '+' 연산자 (3) StringBuilder (4) StringBuffer 이렇게 4가지이다. 이런 방법들이 언제, 어떻게 사용하는게 더 효율적일지 알아보려고 한다. 1. String 클래스의 concat() 메서드 - String 클래스에서 제공하는 기본 메서드이다. - concat() 메서드를 이용해서 문자열을 추가할 때마다, 새로운 인스턴스를 생성한다. 따라서 성능이나 속도 면에서 좋지 않다. 예제 코드 실행 결과 실행 결과를 보면 초기 "공유" 라고 저장된 str의 주소와 concat() 메서드 실행 후 str의 주소가 달라진 것을 볼 수 있다. 만약 반복적인 문자열 연결이 이루어진다면 주소 값이 s..
-
[알고리즘] #최고의 집합■ Algorithm 2019. 6. 26. 16:14
출처 : https://programmers.co.kr/learn/courses/30/lessons/12938 알고리즘 연습 - 최고의 집합 | 프로그래머스 programmers.co.kr 문제 설명 자연수 n 개로 이루어진 집합 중에 다음 두 조건을 만족하는 집합을 최고의 집합이라고 합니다. 각 원소의 합이 S가 되는 수의 집합 위 조건을 만족하면서 각 원소의 곱 이 최대가 되는 집합 예를 들어서 자연수 2개로 이루어진 집합 중 합이 9가 되는 집합은 다음과 같이 4개가 있습니다. { 1, 8 }, { 2, 7 }, { 3, 6 }, { 4, 5 } 그중 각 원소의 곱이 최대인 { 4, 5 }가 최고의 집합입니다. 집합의 원소의 개수 n과 모든 원소들의 합 s가 매개변수로 주어질 때, 최고의 집합을 r..
-
#5-1. http 모듈을 이용한 웹 서버 만들기■ Front-End/- Node.js 2019. 6. 26. 02:38
http://www.yes24.com/Product/goods/32442876 Do it! Node.js 프로그래밍 지금 당장 서버가 필요하다면? 실제 서버로 구동 가능한 코드로 배워라! 웹 서버, 채팅 서버, 모바일 서버, 위치 기반 서비스 서버, JSON-RPC 서버까지 한 권으로 끝낸다! 이 책은 누구나 쉽게 접근할 수 있는 자바스크립트 언어로 웹 서버를 만들며 서버 개발에 입문한다. 웹 서버를 만들며 작성한 소스 코드를 바로바로 수정해서 다양한 서버를 단박... www.yes24.com 이 책에서 웹 서버를 만드는 방법을 2가지로 나눠 설명하고 있다. 첫 번째는 http 모듈을 이용해 HTTP 프로토콜로 요청하는 내용과 응답을 처리하는 것이고, 두 번째는 express(익스프레스) 모듈을 이용해 ..