분류 전체보기

Algorithm

Tree 트리 구조 알고리즘

Tree란? 한 개 이상의 노드로 이루어진 유한 집합 상위 원소와 하위 원소의 관계가 있는 계층적 자료 구조 하위 원소로 내려가면서, 나무의 가지가 자라나는 모습에서 Tree라는 이름이 붙었다. 각각 데이터를 담고 있는 원소를 노드 또는 정점이라고 한다. 노드 중 최상위 노드를 루트(root)노드라 한다. 각 노드는 0개 이상의 자식 노드를 가질 수 있다. 하나의 부모에 여러 자식이 연결되어 있다. 하나의 자식은 둘 이상의 부모를 가질 수 없다. 노드의 갯수가 N개 일 때, N-1개의 간선을 가지고 있다. 그래서 순환 구조가 생기지 않는다. ✅ 형제 노드 같은 부모 노드를 가진 자식 노드들 ✅ 조상 노드 간선을 따라 루트 노드까지 가는 경로의 모든 노드들 ✅ 서브 트리 부모 노드와 연결된 간선을 끊었을 ..

CS/운영체제

[운영체제] 프로세스와 스레드

프로세스와 스레드 ✅ 프로세스 : 운영체제로부터 자원을 할당받은 작업의 단위 컴퓨터에서 실행되고 있는 프로그램, CPU 스케줄링의 대상이 되는 작업(task)이라는 용어와 같은 의미로 쓰인다. ✅ 스레드 : 프로세스가 할당받은 자원을 이용하는 실행 흐름의 단위 프로세스와 컴파일 과정 ✅ 전처리 : 소스코드의 주석을 제거 및 헤더 파일을 병합하여 매크로를 전환 ✅ 컴파일러 : 오류처리, 코드 최적화 작업을 하며 어셈블러로 변환 ✅ 어셈블러 : 어셈블러는 목적 코드로 변환된다. ✅ 링커 : 프로그램 내에 있는 라이브러리 함수 또는 다른 파일들과 목적코드를 결합하여 실행파일을 만든다 ✅ 정적 라이브러리 동적 라이브러리 3. 프로세스의 상태 여러가지 상태 값을 가진다. 프로세스가 생성되고 끝날 때까지 계속해서 ..

CS/데이터베이스

[데이터베이스] 트랜잭션과 무결성

✅ 트랜잭션 : 데이터베이스의 상태를 변경시키기 위해 수행하는 작업 단위 여러 개의 쿼리들을 하나로 묶은 단위라고 말한다 ** 쿼리 : 데이터 베이스에 접근하는 방법 ✅ 트랜잭션의 전파 : 트랜잭션을 수행할 때 커넥션 객체를 넘겨서 수행하지 않고 여러 트랜잭션 관련 메서드의 호출을 하나의 트랜잭션에 묶이도록 하는 것 ✅ 트랜잭션 ACID 특징 1️⃣ 원자성 Atomicity : 트랜잭션이 DB에 모두 반영되거나 ,전혀 반영되지 않거나를 뜻한다. 예시) 트랜잭션을 커밋했는데, 문제가 발생하여 롤백하는 경우 그 이후에 모두 수행되지 않음을 보장하는 것을 말한다 💡 커밋이란? 여러 쿼리가 성공적으로 처리되었다고 확정하는 명령어 트랜잭션 단위로 수행되며 변경된 내용이 모두 영구적으로 저장되는 것 💡롤백이란? 트..

Algorithm

깊이우선탐색(DFS), 너비우선탐색(BFS) 알고리즘

깊이 우선 탐색 (DFS) : 깊이 우선 탐색은 깊은 부분을 우선적으로 탐색하는 알고리즘입니다. 그래프를 비롯한 비선형 자료구조에서 모든 자료를 빠짐없이 검색하는 방법 중에 하나 입니다. DFS는 스택 자료 구조 (혹은 재귀 함수)를 이용한다. 지도에 표시된 모든 곳에 들르기로 했는데, 길을 가다가 갈림길을 만났다고 가정해보자. 갈림길은 어느쪽이든, 들러야 하는 지점으로 향한다. 이렇게 갈림길에서 한쪽 방향을 고집하며 가장 깊게 들어가는 방식으로 탐색하는 방식을 깊이우선탐색이라고 부릅니다. 구현방법 방문한 점에서 도달할 수 있는 점들을 살펴보고, 아직 방문하지 않은 점들의 정보를 스택에 PUSH한다. 스택에서 점의 정보를 pop 하여 방문한다. 이후 다시 1번으로 돌아간다 스택이 빌 때까지 반복한다. 정..

Spring

어노테이션

💡 어노테이션이란? 사전적 의미로 주석이다. 자바에서는 주석처럼 쓰이며 특별한 의미, 기능을 수행하도록 하는 기술이다. 주요 어노테이션 @Component 개발자가 직접 작성한 Class를 Bean으로 등록하기 위한 어노테이션이다. @Component public class Student { public Student() { System.out.println("hi"); } } @Bean 개발자가 직접 제어가 불가능한 외부 라이브러리 등을 Bean으로 만드려할때 사용하는 어노테이션이다. @Configuration public class ApplicationConfig { @Bean public ArrayList array(){ return new ArrayList(); } } @Controller 스프링..

Spring

[Thymeleaf] 자주 사용하는 문법

common th:text : 화면에 값을 출력할 때 사용 th:if :조건문처럼 사용한다. 해당 조건이 만족할 때에만 보여준다. 에러 발생 th:errors : 해당 value의 error가 있는 경우 출력한다. form th:action : form 태그 사용 시, 해당 경로로 요청을 보낼 때 사용 (url) th:object : form submit을 할 때, form의 데이터가 th:object에 설정해준 객체로 받아진다. th:field 각각 필드들을 매핑을 해주는 역할을 한다. 설정해 준 값으로, th:object에 설정해 준 객체의 내부와 매칭해준다. 중복제거 th:fragment : header, footer, navigation bar와 같이 모든 페이지에 보여져야 하는 항목인 경우 따로..

dalooong
'분류 전체보기' 카테고리의 글 목록 (17 Page)