자바 13

비선형 자료구조 - 이진 트리(Binary Tree)란 무엇이고 여러 가지 종류를 알아보자

시작하며. 지난 글에서 트리 자료구조는 어떤 것인지 왜 이진 트리가 중요한지 등 정리했었다. 이진 트리는 성격에 따라 여러 가지 종류로 분류되며 오늘은 이진 트리란 무엇이고 종류와 특징에 대해서 알아보고자 한다. 이진 트리(Binary Tree). 각 노드는 최대 2개의 자식을 가질 수 있는 트리 자식 노드는 좌우를 구분하여 값을 저장 (왼쪽 자식 : 부모 노드의 왼쪽 / 오른쪽 자식 : 부모 노드의 오른쪽 아래) 이진 트리의 서브 트리는 공백이 될 수도 있고 하나의 서브트리만 가지거나 두 개 모두 가질 수도 있다. 이진 트리의 종류. Perfect binary Tree : 포화 이진 트리 - 모든 레벨의 노드들이 2개씩 다 채워져 있는 트리 - 모든 리프 노드가 같은 레벨에 있어야 함 Complete ..

자바 오름차순/내림차순 정렬하기 - Arrays.sort() 함수

코테 문제를 풀다보면 정렬을 하는 경우가 많은데 Java에서 배열을 정렬할 때는 자바에서 제공하는 Arrays.sort(배열) 함수를 사용하면 쉽게 원하는 결과를 반환할 수 있다. 숫자 배열 / 문자열 배열 오름차순으로 정렬하기 public class SortTest { public static void main(String[] args) { int[] ints = {13, 56, 32, 123, 61, 123, 1, 6}; Arrays.sort(ints); System.out.println(Arrays.toString(ints)); // [1, 6, 13, 32, 56, 61, 123, 123] String[] strs = {"Banana", "banana", "bana", "Carrot", "car"..

BACKEND/JAVA 2023.05.26

함수형 프로그래밍과 람다식(Lambda expression)

시작하며. 코테 관련 강의 수강 중 PriortyQueue 로 푸는 경우가 많이 나오는데 안그래도 이해가 안되는데.. 람다식부터 헤매니 머리 통통.. 두통통.. 그래서 정리겸 람다식이 무엇인지 정리해보려 한다. 함수형 프로그래밍과 람다식. 자바는 객체를 기반으로 프로그램을 구현 만약 어떤 기능이 필요하다면 클래스 만들고 ➡️ 클래스에 메서드를 만들고 ➡️ 메서드 호출 그렇다면 어떤 기능을 사용할 때마다 클래스를 만들고 메서드를 추가해야만 할까? 이를 해소하기 위해 자바 8부터 함수형 프로그래밍을 지원하고 있다. 자바에서 제공하는 함수형 프로그래밍 방식을 람다식(Lambda expression)이라 하며 함수의 구현과 호출만으로 프로그래밍이 수행되는 방식이다. 순수함수(pure function)를 구현하고..

BACKEND/JAVA 2023.05.21