[자료구조] 스택과 큐

이창민·2022년 7월 26일
0

자료구조

목록 보기
2/5

선형 자료구조의 일종이다.

스택

  • 쌓아 올린 형태의 자료구조
  • LIFO : 마지막에 들어간 원소가 가장 먼저 나옴

간단한 구현 코드

class MyStack<T : Any> {
    private val list = ArrayList<T>()

    fun push(element: T) {
        list.add(element)
    }

    fun pop(): T? {
        if (list.size == 0) return null

        return list.removeAt(list.size - 1)
    }

    fun top(): T?{
        return list.lastOrNull()
    }
}

  • 줄을 서는 형태의 자료구조
  • FIFO : 먼저 들어간 원소가 먼저 나옴

간단한 구현 코드

class MyQueue<T : Any> {
    private val list = ArrayList<T>()

    fun add(element: T){
        list.add(element)
    }

    fun remove(): T?{
        if(list.size == 0) return null

        return list.removeAt(0)
    }

    fun peek(): T?{
        if(list.size == 0) return null

        return list[0]
    }
}
profile
android 를 공부해보아요

0개의 댓글