본문 바로가기

프로그래밍60

[자료구조] 이진 트리 자료구조 연결 리스트 이진 트리 스택 큐 해시 정렬 버블 정렬 선택 정렬 삽입 정렬 퀵 정렬 힙 정렬 알고리즘 재귀 함수 너비 우선탐색(BFS) 깊이 우선탐색(DFS) 다익스트라 이진트리(Binary Tree) 이전에 배웠던 연결 리스트는 각 노드에 Data와 다음 노드를 가리키는 포인터변수가 있었다. 하지만 이진트리는 각 노드에 Data와 왼쪽, 오른쪽 노드를 가리키는 포인터변수가 있는 구조로 되어있다. 또한 같은 깊이에 있는 노드들을 Level이라고 한다. 이진트리 삽입 첫 노드는 그냥 입력한다. 첫 노드(Root)를 시작으로 각 노드와 비교하여 작으면 왼쪽, 크면 오른쪽 노드로 간다. 노드가 NULL이면 입력한다. NULL이 아니면 "2번"으로 간다. 2번과 3번을 반복한다. 이진트리 삭제 자식 노.. 2020. 10. 29.
[자료구조] 연결 리스트 자료구조 연결 리스트 이진 트리 스택 큐 해시 정렬 버블 정렬 선택 정렬 삽입 정렬 퀵 정렬 힙 정렬 알고리즘 재귀 함수 너비 우선탐색(BFS) 깊이 우선탐색(DFS) 다익스트라 연결 리스트(Linked List) 연결 리스트는 기차를 생각하면 이해하기 쉽다. 각 열차(Node)에 사람들(Data)가 있고 이 열차를 1줄로 계속 연결하면 된다. 그리고 각 열차는 다음 열차의 위치를 저장한다. 하지만 저는 최상위/최하위 노드와 총 노드의 개수를 저장하는 구조체를 사용하여 좀더 쉽게 연결 리스트를 사용하고자 합니다. 새로운 노드 추가 노드가 없는 경우 새로운 노드를 만들고 리스트의 head에 새로운 노드의 주소를 저장한다. Number를 1증가시킨다. 노드가 한개만 있는 경우 다시 새로운 노드를 만들고 리스.. 2020. 10. 27.
[자료구소/정렬/알고리즘] 개요 면접 대비 알고리즘 공부를 위해 필수적인 자료구조, 정렬, 알고리즘에 대해 공부해보고자 한다. 아래와 같은 순서대로 진행할 예정입니다. 자료구조 연결 리스트 이진 트리 스택 큐 해시 정렬 버블 정렬 선택 정렬 삽입 정렬 퀵 정렬 힙 정렬 알고리즘 재귀 함수 너비 우선탐색(BFS) 깊이 우선탐색(DFS) 다익스트라 2020. 10. 27.
CodeUp[Q_2745] : 우물 탈출! 1. 문제 https://codeup.kr/problem.php?id=2745 우물 탈출! 변수 $a$, $b$, $c$가 공백을 기준으로 입력된다.($0 2020. 4. 22.