일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
- php
- 프로그래밍언어론
- WPF
- cording
- 개발공부
- CSS
- windows
- Mac
- 오답풀이
- git
- 220821
- 방화벽
- 매크로
- plan
- C
- 자격증
- 개발
- knockon
- React
- html
- 외부접속
- Java
- 정보처리기능사
- 개인서버
- 홈서버
- Developer
- CodeIgniter
- bootcamp
- study
- 프로그래밍 언어론
- Today
- Total
목록C (12)
bunta의 보조기억장치
💡 트리(Tree)란?트리(Tree)란 자료구조 중 한 종류로, 하나의 노드를 루트 노드(Root Node)를 시작으로 자식 노드(Child Node)들이 연결되어 나무처럼 가지를 뻗어 나가는 계층적 구조이다.트리의 기본 개념루트(Root) : 트리의 가장 위에 있는 시작 노드노드(Node) : 트리의 각 요소(데이터를 담고 있음)간선(Edge) : 노드와 노드를 연결하는 선부모(Parent) 노드 : 다른 노드를 가리키는 노드자식(Child) 노드 : 부모 노드에 의해 연결된 하위 노드형제(Sibling) 노드 : 같은 부모 노드를 가진 노드들리프(Leaf) 노드 : 자식 노드가 없는 노드(끝 노드)서브트리(Subtree) : 하나의 노드와 그 하위 노드들로 이루어진 트리깊이(Depth) : 루트 노..
💡 스택(Stack)이란? 스택(Stack)은 자료구조의 한 종류로, 아래 그림과 같이 한쪽 방향에서만 데이터를 넣거나(Push) 꺼낼 수 있는(Pop) 구조이다.이러한 특성 때문에, 가장 나중에 추가된 데이터가 가장 먼저 제거되는 후입선출(LIFO, Last In First Out) 방식으로 동작한다.스택의 기본 개념삽입(Push) : 데이터를 스택의 맨 위(Top)에 넣는 작업삭제(Pop) : 스택의 맨 위(Top)에 있는 데이터를 꺼내는 작업(스택에서 데이터는 삭제됨)확인(Peek) : 스택에서 데이터를 삭제하지 않고 맨 위의 데이터를 확인만 하는 작업 🎯 스택 구현하기(배열)배열의 크기를 동적으로 구현#include #include void push(int** stack, int* size, ..
💡 연결 리스트란?일반적으로 사용하는 배열과 다르게 동적으로 각 칸(노드)들이 포인터를 통해 앞뒤로 사슬처럼 연결되어 있는 구조이다. 배열 vs 연결리스트항목배열연결 리스트메모리 구조연속적인 메모리 공간 사용비연속적인 메모리 공간포인터로 연결메모리 할당고정 크기(컴파일 또는 실행 시 결정)동적 크기(필요할 때마다 malloc 가능)삽입 / 삭제 속도느림 (요소 이동 필요)빠름 (포인터 변경만 하면 됨)접근 속도빠름인덱스를 통해 접근 O(1)느림처음부터 순차적으로 접근 O(n)메모리 효율성메모리 낭비 가능 (미리 크게 할당 시)필요한만큼 할당 (하지만 포인터 공간이 추가됨)구현 난이도쉬움어려움 (구조체와 포인터를 활용)용도크기가 고정된 데이터 처리에 적합데이터의 삽입과 삭제가 빈번한 경우 적합 🔎 연..
💡 헤더 파일이란?C와 C++에서 사용하는 일종의 참조 파일로 함수, 변수, 구조체, 매크로 등의 선언을 모아 놓은 파일이다.보통 소스 코드의 맨 앞부분에 #include로 포함시키며, 컴파일 시 자동으로 연결되어 컴파일러가 사용할 수 있게 해준다.크게 컴파일러가 제공하는 표준 헤더와 사용자가 임의로 만든 사용자 정의 헤더가 있다.헤더 파일 사용법#include #include "hacker.h"// 표준 헤더의 경우 로 감싸야 함// 사용자 헤더의 경우 ""로 감싸야 함int main(){ printf("Hello, World!\n"); return 0;}🎯사용자 헤더 만들기1. .h 확장자를 가진 헤더 파일을 작성한 뒤, 그 안에 구현체나 함수, 변수 등을 선언한다.2. 헤더 파일을 사용하려는 소..