전체 글
개발 및 일상 블로그
-
💡 기초 복습 겸 다시 정리하고 있습니다. 설명이 부족한 부분이 있을 수 있으니 고려하여 읽어주시기 바랍니다. 연산자와 연산식 프로그램에서 데이터를 처리하여 결과를 산출하는 것을 연산(Operation) ,연산에서 사용되는 표시나 기호를 연산자(Operator)라고 합니다. 연산되는 데이터는 피연산자(Operand)라고 하며 연산의 과정을 기술한 것을 연산식(Expressions)라 합니다. 연산식은 반드시 하나의 값을 산출하므로, 하나의 값이 올 수 있는 곳이라면 어디든지 값 대신 연산식을 사용할 수 있습니다. 📌 연산자의 종류 연산자는 필요로 하는 피연산자의 수에 따라 크게 단항, 이항, 삼항 연산자로 구분됩니다. 자바에서 제공하는 연산자는 다음과 같습니다. 🔎 단항 연산자 단항 연산자란 피연산자가 ..
자바 기초 - 5. 연산자💡 기초 복습 겸 다시 정리하고 있습니다. 설명이 부족한 부분이 있을 수 있으니 고려하여 읽어주시기 바랍니다. 연산자와 연산식 프로그램에서 데이터를 처리하여 결과를 산출하는 것을 연산(Operation) ,연산에서 사용되는 표시나 기호를 연산자(Operator)라고 합니다. 연산되는 데이터는 피연산자(Operand)라고 하며 연산의 과정을 기술한 것을 연산식(Expressions)라 합니다. 연산식은 반드시 하나의 값을 산출하므로, 하나의 값이 올 수 있는 곳이라면 어디든지 값 대신 연산식을 사용할 수 있습니다. 📌 연산자의 종류 연산자는 필요로 하는 피연산자의 수에 따라 크게 단항, 이항, 삼항 연산자로 구분됩니다. 자바에서 제공하는 연산자는 다음과 같습니다. 🔎 단항 연산자 단항 연산자란 피연산자가 ..
2023.04.10 -
팩토리얼 (Factorial) 순열이나 조합을 계산하기 위해서는 우선 팩토리얼을 알아야 합니다. 팩토리얼이란 1부터 n까지의 자연수를 모두 곱하는 것을 의미합니다. 수식으로는 다음과 같이 나타냅니다. n! = n(n - 1)(n - 2)(n - 3) .... 1 순열 (Permutation) 순열이란 서로 다른 n개의 원소에서 r개를 중복없이 순서를 정해 나열하는 것을 뜻합니다. 다음과 같은 공식을 이용하여 순열의 개수를 구할 수 있습니다. nPr = n(n - 1)(n - 2)(n - 3) ..... (n - r + 1) (단, 0 < r ≤ n) 팩토리얼을 이용하면 다음과 같이 간략화 할 수 있습니다. 중복 순열 중복 순열이란 서로 다른 n개의 원소에서 r개를 중복을 허용하고 순서를 정해 나열하는 ..
기초 수학 - 3. 순열과 조합팩토리얼 (Factorial) 순열이나 조합을 계산하기 위해서는 우선 팩토리얼을 알아야 합니다. 팩토리얼이란 1부터 n까지의 자연수를 모두 곱하는 것을 의미합니다. 수식으로는 다음과 같이 나타냅니다. n! = n(n - 1)(n - 2)(n - 3) .... 1 순열 (Permutation) 순열이란 서로 다른 n개의 원소에서 r개를 중복없이 순서를 정해 나열하는 것을 뜻합니다. 다음과 같은 공식을 이용하여 순열의 개수를 구할 수 있습니다. nPr = n(n - 1)(n - 2)(n - 3) ..... (n - r + 1) (단, 0 < r ≤ n) 팩토리얼을 이용하면 다음과 같이 간략화 할 수 있습니다. 중복 순열 중복 순열이란 서로 다른 n개의 원소에서 r개를 중복을 허용하고 순서를 정해 나열하는 ..
2023.04.08 -
경우의 수란? 확률론의 가장 기본적인 개념으로, 어떤 사건이 일어날 수 있는 경우의 가짓수를 의미합니다. 경우의 수를 계산하기 위해서는 두가지 기본 원리에 대해 알아야합니다. 합의 법칙과 곱의 법칙 합의 법칙 두 사건 A, B가 동시에 일어나지 않을 때, 사건 A와 사건 B가 일어나는 경우의 수가 각각 m, n이면 사건 A 또는 사건 B가 일어나는 경우의 수는 m + n이다. 사건과 사건이 이전 결과에 영향을 받거나 관계가 서로 엮여있을 때 합의 법칙을 사용합니다. 동시에 일어나지 않을 때 합의 법칙을 사용한다고 했는데, 만약 동시에 일어나는 경우가 있다면, 중복되는 만큼 경우의 수에서 제외시켜주어야 합니다. 보통 합집합으로 구하게 됩니다. n(A U B) = n(A) + n(B) - n(A ∩ B) 곱..
기초 수학 - 2. 경우의 수경우의 수란? 확률론의 가장 기본적인 개념으로, 어떤 사건이 일어날 수 있는 경우의 가짓수를 의미합니다. 경우의 수를 계산하기 위해서는 두가지 기본 원리에 대해 알아야합니다. 합의 법칙과 곱의 법칙 합의 법칙 두 사건 A, B가 동시에 일어나지 않을 때, 사건 A와 사건 B가 일어나는 경우의 수가 각각 m, n이면 사건 A 또는 사건 B가 일어나는 경우의 수는 m + n이다. 사건과 사건이 이전 결과에 영향을 받거나 관계가 서로 엮여있을 때 합의 법칙을 사용합니다. 동시에 일어나지 않을 때 합의 법칙을 사용한다고 했는데, 만약 동시에 일어나는 경우가 있다면, 중복되는 만큼 경우의 수에서 제외시켜주어야 합니다. 보통 합집합으로 구하게 됩니다. n(A U B) = n(A) + n(B) - n(A ∩ B) 곱..
2023.04.08 -
집합이란? 특정 조건을 만족하는 원소(Element)들의 모임을 뜻합니다. 표기 방법 원소 나열법 A = { 1 , 2 , 3 , 4 , 5 } , Z = { 2 , 4 , 6 , 8 , 10 } 원소를 { } 안에 나열해주면 됩니다. 조건 제시법 A = { x | x는 정수, 1 ≤ x ≤ 5 } B = { 2x | x는 정수, 1 ≤ x ≤ 10 } 여기서 | 를 기준으로 앞부분은 집합 A가 x라는 원소로 이루어져 있다는 것을 의미하며, 뒷부분은 원소 x의 조건을 적습니다. 벤 다이어그램 집합의 종류 교집합 두 집합에 모두 속하는 원소들로 이루어진 집합을 교집합이라 합니다. A ∩ B = { x | x ∈ A and x ∈ B } 위의 예시는 x는 A에 포함되고 B에 포함된다는 것을 의미합니다. 이걸..
기초 수학 - 1. 집합 (Set)집합이란? 특정 조건을 만족하는 원소(Element)들의 모임을 뜻합니다. 표기 방법 원소 나열법 A = { 1 , 2 , 3 , 4 , 5 } , Z = { 2 , 4 , 6 , 8 , 10 } 원소를 { } 안에 나열해주면 됩니다. 조건 제시법 A = { x | x는 정수, 1 ≤ x ≤ 5 } B = { 2x | x는 정수, 1 ≤ x ≤ 10 } 여기서 | 를 기준으로 앞부분은 집합 A가 x라는 원소로 이루어져 있다는 것을 의미하며, 뒷부분은 원소 x의 조건을 적습니다. 벤 다이어그램 집합의 종류 교집합 두 집합에 모두 속하는 원소들로 이루어진 집합을 교집합이라 합니다. A ∩ B = { x | x ∈ A and x ∈ B } 위의 예시는 x는 A에 포함되고 B에 포함된다는 것을 의미합니다. 이걸..
2023.04.07 -
💡 기초 복습 겸 다시 정리하고 있습니다. 설명이 부족한 부분이 있을 수 있으니 고려하여 읽어주시기 바랍니다. 변수(Variable) 프로그램은 필요에 따라 데이터를 메모리에 저장하고 사용하게 됩니다. 이러한 하나의 값만을 저장하는 메모리 공간을 변수라고 합니다. 변수에는 복수 개의 값을 저장할 수 없고, 한가지 타입의 값만 저장할 수 있습니다. 변수란 이름을 갖게 된 이유는 프로그램에 의해 수시로 값이 변동 될 수 있기 때문입니다. 📌 변수의 선언과 초기화 변수의 선언이란 데이터를 메모리에 저장하기 위해 공간을 확보하는 작업이라고 할 수 있습니다. 데이터 저장을 위해 얼마만큼의 메모리 공간을 확보해야하는지 컴파일러에게 알려줄 필요가 있는데, 이 때 데이터의 타입을 이용해서 알려줄 수 있습니다. 메모리 ..
자바 기초 - 4. 변수와 데이터 타입💡 기초 복습 겸 다시 정리하고 있습니다. 설명이 부족한 부분이 있을 수 있으니 고려하여 읽어주시기 바랍니다. 변수(Variable) 프로그램은 필요에 따라 데이터를 메모리에 저장하고 사용하게 됩니다. 이러한 하나의 값만을 저장하는 메모리 공간을 변수라고 합니다. 변수에는 복수 개의 값을 저장할 수 없고, 한가지 타입의 값만 저장할 수 있습니다. 변수란 이름을 갖게 된 이유는 프로그램에 의해 수시로 값이 변동 될 수 있기 때문입니다. 📌 변수의 선언과 초기화 변수의 선언이란 데이터를 메모리에 저장하기 위해 공간을 확보하는 작업이라고 할 수 있습니다. 데이터 저장을 위해 얼마만큼의 메모리 공간을 확보해야하는지 컴파일러에게 알려줄 필요가 있는데, 이 때 데이터의 타입을 이용해서 알려줄 수 있습니다. 메모리 ..
2023.04.06 -
🎈 Garbage Collection이란? JVM의 Garbage Collecter가 메모리 누수를 방지하기 위해 주기적으로 Heap 영역에서 더이상 참조되지 않는 불필요한 메모리(Garbage)를 청소하는 과정입니다. ✨ GC의 중요한 개념 Garbage Collection이 어떻게 작동하는지 알기 위해서 알고 넘어가야할 개념들이 있습니다. Reachability (접근 가능성) GC에서 객체가 참조되고 있는지 아닌지(Garbage인지)를 판별하는 것을 의미합니다. 객체로부터 유효하게 참조되고 있으면 Reachable, 참조되지 않으면 Unreachable 이라 합니다. Root Set(메소드 영역, 스택, 네이티브 스택)에서 참조되고 있거나 참조의 시발점이 Root Set이라면 Reachable로 보..
자바 기초 - 3. Garbage Collection (GC)와 Heap 영역🎈 Garbage Collection이란? JVM의 Garbage Collecter가 메모리 누수를 방지하기 위해 주기적으로 Heap 영역에서 더이상 참조되지 않는 불필요한 메모리(Garbage)를 청소하는 과정입니다. ✨ GC의 중요한 개념 Garbage Collection이 어떻게 작동하는지 알기 위해서 알고 넘어가야할 개념들이 있습니다. Reachability (접근 가능성) GC에서 객체가 참조되고 있는지 아닌지(Garbage인지)를 판별하는 것을 의미합니다. 객체로부터 유효하게 참조되고 있으면 Reachable, 참조되지 않으면 Unreachable 이라 합니다. Root Set(메소드 영역, 스택, 네이티브 스택)에서 참조되고 있거나 참조의 시발점이 Root Set이라면 Reachable로 보..
2023.04.06 -
❗ 읽기 전 알아두면 좋은 용어 소스 코드 (Source Code) : 사람이 읽을 수 있는 코드로 보통 컴퓨터 소프트웨어(프로그램)를 프로그래밍 언어로 기술한 것을 의미 바이트 코드 (Byte Code) : 소스 코드를 컴파일하여 가상머신이 이해할 수 있도록 만든 중간 코드 기계어 (Machine Code) : 컴퓨터(CPU)가 별다른 해석 없이 바로 읽을 수 있는 코드, 네이티브 코드라고도 합니다. 💻 JVM이란? Java Virtual Machine의 약자로, 자바로 개발된 프로그램을 실행하기 위한 가상 컴퓨터를 의미합니다. 조금 더 자세히 말해보자면, JVM은 자바로 개발된 프로그램을 컴파일하여 만들어지는 자바 바이트 코드를 해석하고 실행하는 역할을 합니다. 자바와 OS 사이에서 중개자 역할을 하..
자바 기초 - 2. JVM에 대한 모든 것❗ 읽기 전 알아두면 좋은 용어 소스 코드 (Source Code) : 사람이 읽을 수 있는 코드로 보통 컴퓨터 소프트웨어(프로그램)를 프로그래밍 언어로 기술한 것을 의미 바이트 코드 (Byte Code) : 소스 코드를 컴파일하여 가상머신이 이해할 수 있도록 만든 중간 코드 기계어 (Machine Code) : 컴퓨터(CPU)가 별다른 해석 없이 바로 읽을 수 있는 코드, 네이티브 코드라고도 합니다. 💻 JVM이란? Java Virtual Machine의 약자로, 자바로 개발된 프로그램을 실행하기 위한 가상 컴퓨터를 의미합니다. 조금 더 자세히 말해보자면, JVM은 자바로 개발된 프로그램을 컴파일하여 만들어지는 자바 바이트 코드를 해석하고 실행하는 역할을 합니다. 자바와 OS 사이에서 중개자 역할을 하..
2023.04.05 -
JAVA란? 1995년 Sun Microsystems에서 발표하고 현재 Oracle에서 관리하고 있는 객체지향 프로그래밍(OOP) 언어 입니다. 위의 이미지에서 보듯 인기있는 프로그래밍 언어 중 하나로서 특히 한국에서 많이 사용되어지고 있습니다. 🔎 특징 자바는 다양한 특징을 가지고 있지만 그 중 알아두면 좋을만한 특징들을 알아봅시다. 1. Cross-Platform을 지원 Write Once, Run Anywhere Cross-Platform이란 다양한 플랫폼에서 사용할 수 있는 것을 의미합니다. 자바로 개발된 프로그램은 자바 실행 환경(JRE)만 설치되어 있다면 소스 코드의 변경 없이 다양한 운영체제에서 실행할 수 있습니다. 2. 객체 지향 프로그래밍 (OOP) 지원 간단하게 객체지향 프로그래밍이란 ..
JAVA 기초 - 1. JAVA란?JAVA란? 1995년 Sun Microsystems에서 발표하고 현재 Oracle에서 관리하고 있는 객체지향 프로그래밍(OOP) 언어 입니다. 위의 이미지에서 보듯 인기있는 프로그래밍 언어 중 하나로서 특히 한국에서 많이 사용되어지고 있습니다. 🔎 특징 자바는 다양한 특징을 가지고 있지만 그 중 알아두면 좋을만한 특징들을 알아봅시다. 1. Cross-Platform을 지원 Write Once, Run Anywhere Cross-Platform이란 다양한 플랫폼에서 사용할 수 있는 것을 의미합니다. 자바로 개발된 프로그램은 자바 실행 환경(JRE)만 설치되어 있다면 소스 코드의 변경 없이 다양한 운영체제에서 실행할 수 있습니다. 2. 객체 지향 프로그래밍 (OOP) 지원 간단하게 객체지향 프로그래밍이란 ..
2023.04.05