분류 전체보기
[알고리즘] Binary Tree 이진 트리: 기본정리 - in-order 중위순회, pre-order 전위순회, post-order 후위순회 구현 - Kotlin
목차 이번 포스트에서는 이진 트리에 대해서 알아보겠습니다. 이진 트리를 알아보기전, 트리의 용어와 익숙하시지않으시다면 아래 포스트를 먼저 보고와주세요. [알고리즘] Tree 트리 : 기본정리 - 트리 구성, 깊이우선순회(Depth-First Traversal), 레벨순회(LevelOrderTra 목차 Tree 개념 Tree는 데이터 구조중 하나입니다. 1. 계층구조의 관계를 가진 데이터 구조이고 2. 정리되어 나열된 데이터를 다룰 때 검색이 빠릅니다. 3. Tree에는 사이즈, 모양이 다른 여러 tree들 underdog11.tistory.com 이진 트리 개념 이진 트리는 트리와 같지만 최대 2개의 자식만 가질 수 있는 트리구조입니다. 자식 두 개의 왼쪽을 LeftChild 오른쪽을 rightChild..
[알고리즘] Tree 트리 : 기본정리 - 트리 구성, 깊이우선순회(Depth-First Traversal), 레벨순회(LevelOrderTraversal), 검색(Search) - Kotlin
목차 Tree 개념 Tree는 데이터 구조중 하나입니다. 1. 계층구조의 관계를 가진 데이터 구조이고 2. 정리되어 나열된 데이터를 다룰 때 검색이 빠릅니다. 3. Tree에는 사이즈, 모양이 다른 여러 tree들 이 있습니다. 4. 트리는 노드들과 노드들을 연결하는 링크로 구성되어있습니다. Tree 구성 및 용어 우선 시작하기에 앞서 tree에 구성과 용어들을 살펴보겠습니다. 용어 설명 다이어그램 Node LinkedList와 비슷하게 tree에도 node가 있습니다. 각 node는 데이터를 포함하고있습니다. Parent(부모) / Child(자식) 부모노드는 다수의 자식 노드를 가지고있을수있습니다. 하지만 자식 노드는 하나의 부모만 가지고있을수있습니다. 루트 노드(Root) 트리에 가장 상단에 위치한..
[알고리즘] Queue 큐: 기본정리 - DoublyLinkedList(이중연결 리스트), Ring Buffer(원형큐),ArrayList, Stack으로 Queue 구현하기 - Kotlin
목차 Queue 개념 큐는 영화티켓을 사기 위해 기다릴 때, 롤 큐를 기다릴 때처럼 실생활에 적용되는 사례가 많습니다. 이 큐의 특징은 선입선출(FIFO: 먼저 들어온 것이 먼저 나가는 형태)이라는 것입니다. Queue 인터페이스 구현 큐에 인터페이스를 만들어보겠습니다. interface Queue{ fun enqueue(element: T): Boolean fun dequeue():T? val count: Int get val isEmpty: Boolean get() = count == 0 fun peek(): T? } 위에 4가지에 키 함수가 있습니다. enqueue: 맨뒤에 큐에 element를 삽입해준 후 성공하면 true를 반환합니다. dequeue: 큐에 가장 앞부분에 element를 지우고 ..
[티스토리] 코드블럭 편집하기 완결판 - 라인넘버 추가, 숫자추가, 폰트추가, 테마, 글자크기, 코드블럭 모서리 편집
목차 개요 우선 티스토리에서 기본적으로 제공하는 코드 블록 플러그인을 사용 시 코드 크기도 작고 모서리도 편집 못하고, 라인 넘버도 없어서 많은 디자인적인 제약이 있습니다. 그래서 이번포스트에서는 아래와 같이 커스텀 된 코드 블록 테마를 티스토리에 적용해보겠습니다. class MainActivity : AppCompatActivity() { val TAG = "MainActivity" override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) } 필요한 Highlight 파일들 업로드 2가지 파일을 티스토리에 업로드해야합니다. 1. hig..