Home
ggggraceful
Cancel

/Algorithm/ 이분탐색, 이분탐색의 시간복잡도

1. 이분탐색 중간값과 찾으려는 값의 대소를 비교한 뒤 탐색 범위를 반으로 줄여가며 값을 찾는 탐색 알고리즘 찾고자 하는 값이 정렬된 배열의 중간 값보다 크면 중간값을 포함한 하위 값들은 탐색 대상에서 제외된다. 반대로 찾고자 하는 값이 배열의 중간 값보다 작으면 중간 값을 포함한 상위 값들은 탐색에서 제외된다. ...

❗ERROR - jekyll chirpy theme 자동배포 오류

🧶 Trouble jekyll chirpy theme 클론받아 수정 후 자동배포를 기다리는데, 404에러 발생과 홈화면이 제대로 실행되지 않는 문제 발생 블로그의 메인페이지에 테마의 홈화면이 아닌, index.html 파일 내용이 보임 ✂️ Shooting 깃허브 액션에서 빌드에 실패했다는 에...

/Java/ Java의 특징

JAVA 자바는 객체지향적 프로그래밍 언어(OOP) ✔️ 객체지향적 언어(OOP)  프로그래밍에 사용 될 데이터의 상태와 행위를 객체로 만들어,  객체간의 상호작용을 통해 비지니스 로직을 구성하는 프로그래밍 기법입니다. JAVA의 특징 운영체제 독립적이다. JVM(자바가상머신) 위에서 동작하기 때문에...

/Java/ 💬 JVM의 스택과 힙메모리 영역

JVM의 메모리 할당 방식 JVM은 기본적으로 Stack Memory 와 Heap Memory 라 불리는 두가지 저장 공간을 이용해 메모리를 할당한다. 이들에 메모리를 할당하는 방법은 바이트 코드를 한 줄 한 줄 읽는 것이다. 기본적으로 코드들은 한 줄 한 줄 읽혀서 Stack이라 불리는 공간에 차곡차곡 쌓인다. 마지막에 들어온 변수가 먼...

/Java/ Java가 컴파일되는 과정

Java가 컴파일되는 과정 개발자가 .java 파일을 생성한다. build를 한다. java compiler의 javac의 명령어를 통해 바이트코드(.class)를 생성한다. Class Loader를 통해 JVM 메모리 내로 로드(및 링크)하여 런타임 영역인 JVM 메모리에 올린다. JVM에 올라온 바이트 코드들을 명령어...

/Java/ JVM

📌 JVM Java Virtual Machine 자바가상머신으로 자바 프로그램 실행환경을 만들어 주는 소프트웨어 컴퓨터가 자바 바이트 코드를 운영체제에 맞게 실행시키는 역할 Java와 OS(운영체제) 사이에서 중개자 역할 자바로 작성된 모든 프로그램은 자바 가상 머신에서만 실행될 수 있...

/etc/ 동기&비동기, 블록킹&논블록킹

동기 & 비동기 : 프로세스의 수행 순서 보장에 대한 매커니즘 동기 : 작업을 동시에 수행하거나, 동시에 끝나거나, 끝나는 동시에 시작 비동기 : 시작, 종료가 일치하지 않으며, 끝나는 동시에 시작을 하지 않음 블록킹 & 논블록킹 : 프로세스의 유휴 상태에 대한 개념...

/etc/ Base64

Base64 인코딩 8비트 Binary Data(2진 데이터:zip파일이나 exe파일 등)를 문자 코드에 영향을 받지 않는 공통 ASCII 영역의 문자들을 6bit씩 끊어서 일련의 문자열로 바꾸는 인코딩 방식 이는 데이터가 전송 중에 수정 없이 그대로 유지되도록 하기 위한 것이다. 일반적으로 MIME을 통한 이메일 및 XML로 ...

/Database/ HTTP, HTTPS

📌 HTTP HyperText Transfer Protocol 인터넷 상에서 클라이언트와 서버가 자원을 주고 받을 때 쓰는 통신 규약 서버/클라이언트 모델을 따라 데이터를 주고 받기 위한 프로토콜 (80번 포트를 사용) 인터넷을 작동시키는 역할을 하며, 웹 서버 및 웹 브라우저 상호 간의 데이터 전송을 위한 응용계층 프로토콜...

/Spring/ Transaction

📌 트랜잭션 Transactional이란 어노테이션은 데이터베이스의 상태를 변경하는 작업 또는 한번에 수행되어야 하는 연산들을 의미 예외 발생 시 rollback 처리를 자동으로 수행해주는 어노테이션 ACID라 하는 네가지 특성을 가지고 있습니다. ✔️상태를 변경시킨다는 것 = SQL 질의어를 통해 DB에 접근하는 것 -SE...