Memory structure Code segment 실행할 프로그램의 코드와 명령어가 디스크에서 로드되어 저장되는 영역입니다. 이 영역에 저장된 명령어를 CPU가 처리합니다. 아래 두 region을 Data segment local and static data 컴파일 시간 동안 프로그램의 전역 변수와 정적 변수의 주소가 설정되어 저장됩니다. 프로세스 수명 동안 살아있으며, 프로그램 종료 시 사라집니다. global / static 영역은 엄밀히 말해 아래의 영역입니다. Initialized data segment(초기화된 데이터 세그먼트) 기본값으로 선언된 변수가 저장됩니다. bss 아직 값이 할당되지 않은 정적으로 할당된 변수가 포함된 object file, excecutable, assembly l..
분류 전체보기
DFS vs BFS, 언제 무엇을 써야 할까? 어느 탐색 전략이 좋은지는 그래프의 모양에 따라 효율이 갈리니 모양과 용도를 보고 선택하자! DFS>BFS DFS가 BFS보다 우월한 성능을 낼 때 높은 분기 계수(branching factor)를 가진 두껍게 연결된 그래프에서(thickly connected graphs DFS가 BFS보다 더 좋은 성능을 낸다.[같은 뜻의 비슷한 표현] 그래프의 간선이 많고(=밀도가 높다/dense하다) 평균 인접 노드 수가 노드 수에 비해 높다면 너비 우선 검색은 긴 대기열을 가진다. 그에 비해 DFS는 적은 스택을 가지므로 DFS가 좀 더 성능이 좋을 것이다.) 해답(solution)이 가장 먼 자식 노드에 있을 것 같으면 DFS가 더 좋은 선택이 된다. BFS>DFS..
스택 학습 사이트 leetcode 스택(Stack) 자료구조 개념 | 배열 Vs 연결 리스트 | LIFO(Last In First Out) | push | pop | top | Overflow | Underflow 스택의 개념 :: LIFO 원칙 스택은 "Last-In, First-Out" 원칙을 따르며, 마지막으로 추가된 항목은 가장 먼저 제거되는 형식의 자료구조이다. 스택의 연산 Push(item): 스택 상단에 요소를 추가 Pop(): 스택에서 상단 요소를 제거 Peek()/Top(): 요소를 제거하지 않고 스택 상단에 있는 요소를 봄 IsEmpty(): 스택이 비어 있는지 확인 push pop 삽입 삭제(인출) 스택의 끝 가장 끝 요소 스택과 데이터 구조 배열 배열은 같은 타입의 요소들의 고정된 ..