반응형

2024/10/17 2

[TIL] RB Tree 구현하기 #2

RB Tree 기본 개념 과 RB Tree 구현하기 #1 에 이어서, rbtree.c 구현 #25. 왼쪽으로 회전시키기 void delete_rbtree(rbtree *t)RB Tree 에 삽입/ 삭제를 수행할 때 회전을 통해 트리의 균형을 유지하는 경우가 많기 때문에왼쪽으로, 오른쪽으로 회전하는 함수를 별도로 구성했다 왼쪽으로 회전하는 경우는 루트의 오른쪽 자식에 새로운 오른쪽 자식이 생기는 상황인데 기존의 오른쪽 자식을 루트로 올리고 루트는 왼쪽 자식으로 내려 보내면서 균형을 맞춘다 그 과정에서 서로를 잘 연결시켜야 하는데 이 부분이 많이 헷갈려서 그림을 그리며 개념을 이해했다 // FixUp 시 좌회전void rotate_left(rbtree *t, node_t *node){ // 1. rig..

TIL 2024.10.17

[혼공컴운] CH10 프로세스와 스레드

CH10 프로세스와 스레드10-1 프로세스 개요 프로그램은 실행되기 전까지는 보조기억장치에 있는 데이터 덩어리일 뿐이지만메모리에 적재하고 실행하는 순간 그 프로그램은 프로세스가 된다이 과정을 프로세스를 생성한다고 한다 포그라운드 프로세스 Foreground Process사용자가 볼 수 있는 공간에서 실행되는 프로세스백그라운드 프로세스 Background Process 사용자가 볼 수 없는 공간에서 실행되는 프로세스 1) 사용자와 직접 상호작용이 가능한 백그라운드 프로세스 - 데몬 Daemon, 서비스 Service 2) 사용자와 상호작용하지 않고 그저 정해진 일만 수행하는 프로세스  프로세스 제어 블록모든 프로세스는 실행을 위해 CPU가 필요하지만, CPU 자원은 한정되어 있다 PCB에 담기는 대표적인 ..

반응형