분류 전체보기

    [알고리즘] Stack 스택: 기본정리 - pop, push, peek, count - Kotlin

    [알고리즘] Stack 스택: 기본정리 - pop, push, peek, count - Kotlin

    목차 스택 자료구조 개념 스택은 아이템을 쌓아 올리는 구조입니다. 제거할 때도 가장 위에 있는 아이템부터 제거하게 되고 추가할 때도 위에서부터 추가합니다. 그래서 스택에는 2가지 동작이 있습니다. 1. push: 스택에서 가장 위에 element를 추가합니다. 2. pop: stack에 가장 위에 있는 element를 제거합니다. 이 의미는 한쪽에서만 데이터를 추가하고 제거할 수 있다는 뜻입니다. 우리는 이러한 stack 구조를 LIFO(last-in-first-out - 가장 마지막으로 추가한 게 가장 먼저 나가는 구조)라고 부릅니다. 스택을 코드로 표현하면 아래와 같습니다. interface Stack { fun push(element:Element) fun pop(): Element? } 스택은 프..

    [알고리즘] LinkedList 링크리스트: 활용 예제 - 뒤집기, 합치기, 가운데 값 찾기 - Kotlin

    [알고리즘] LinkedList 링크리스트: 활용 예제 - 뒤집기, 합치기, 가운데 값 찾기 - Kotlin

    목차 저번 포스트에서는 LinkedList에 개념과 구현 방법을 다뤄봤는데요, [Algorithm] Kotlin LinkedList 개념 - node 추가하기, 제거하기 목차 LinkedList 개념 LinkedList는 각 Node들이 다음 Node에 연결돼있는 리스트입니다. LinkedList에는 두 가지가 있습니다. 1. Singly Linked List: 다음 node에 한 방향으로 연결된 리스트입니다. 2. Doub.. underdog11.tistory.com 이 포스트에서는 LinkedList로 가장 자주 활용되는 3가지 타입에 문제를 다뤄보겠습니다. LinkedList 뒤집기 아래 그림과 같이 LeetCode에 예제를 통해 LinkedList를 뒤집어 보겠습니다. 해설 - Reverse Li..

    [알고리즘] 기본으로 알아야할 Kotlin Collection Interface 종류 및 구현 - Iterable, Collection, MutableIterable, MutableCollection 사용예제

    [알고리즘] 기본으로 알아야할 Kotlin Collection Interface 종류 및 구현 - Iterable, Collection, MutableIterable, MutableCollection 사용예제

    목차 이포스트는 Data Structures & Algorithms in Kotlin을 참고하여 작성하였습니다. Kotlin Collection Interface 이번 포스트에서는 Kotlin Collection Interface에 대해 다뤄보겠습니다. Kotlin Collection Interface 은 무엇일까요? Kotlin Library의 인터페이스는 어떤 타입을 리턴하는지 말해주고 각 타입은, 각각의 특성을 가지고 있습니다. 그리고 Collection Interface는 4 티어로 나눠집니다. 인터페이스 설명 Tier 1 Iterable Iterable 타입은 element를 Iterator를 통해 순차적으로 접근합니다. Tier 2 Collection Iterable 타입인 동시에, eleme..

    [Android] 색상 선택창, 팔레트 구현하기 - Color Sheet 라이브러리 사용법

    [Android] 색상 선택창, 팔레트 구현하기 - Color Sheet 라이브러리 사용법

    목차 이번 포스트에서는 msaikanth/colrSheet을 이용해서 팔레트 창을 만들어보겠습니다. GitHub - msasikanth/ColorSheet: A color picker bottom sheet 🌈 A color picker bottom sheet 🌈. Contribute to msasikanth/ColorSheet development by creating an account on GitHub. github.com 결과물은 아래와 같습니다. Dependency 추가하기 colorSheet라이브러리를 사용하기 위해서는 minSdk가 21 이상이 여야 합니다. //color Sheet implementation "dev.sasikanth:colorsheet:1.0.1" ColorSheet La..