2020.코딩일지

[자료구조] Stack & Queue & Graph [BEB 6th]013일차 본문

algorithm

[자료구조] Stack & Queue & Graph [BEB 6th]013일차

개발하는라푼젤 2022. 7. 22. 00:07
728x90
코드스테이츠 블록체인 부트캠프 6기 

💃자료구조란?

 여러 데이터들의 묶음을 저장하고, 사용하는 방법을 정의한 것.

 다양한 상황에서 데이터를 효율적으로 다룰 수 있는 방법들을 모두 모아모아~

특정한 상황에 놓인 문제를 해결하는데 특화되어있다!

따라서 많은 자료구조를 알아두면 어떠한 상황이 닥쳤을 때 적합한 자료구조를 빠르고 정확하게 적용하여 문제 해결 가능!

 

data데이터란?

문자,숫자,소리,그림, 영상 등 실생활을 구성하고 있는 모든 값

데이터 그 자체만으로는 정보를 가지기 어렵다( 나이? 누구,동물,식물 어떤 나이인가?)

데이터는 분석하고 정리하여 활용해야만 의미를 가질 수 있다 - 이거슨빅데이터ㅓㅓㅓ🤓아닌가?

필요에 따라 데이터의 특징을 잘 파악(분석)하여 체계적으로 정리하여 저장해두는게 데이터를 활용하는 데 있어 훨씬 유리!

    상황의 예시1) 이름을 아는것만으로도 전화를 걸 수 있는 방법

    상황의 예시2) 웹 브라우저에서 뒤로, 앞으로 가는 방법

    상황의 예시3) 게임 매칭 시, 수많은 사람들을 통제하는 방법

💃Stack, Queue, Tree, Graph 자료구조 이해 (코테에 자주 등장하는 4가지)

 - 알고리즘 문제에서 Stack, Queue 자료구조를 배열로 대체하여 흉내낼 수 있다 

 - 각 자료구조의 개념,구조 특징 / 적합한 상황 / 목적을 이해할 수 있다.

 - 자료구조의 차이점을 이해하기 위해 자료구조 내부를 직접 구현!하여 동작원리 이해!

       
스택 후입선출(ex.엘베)
LIFO(Last In First Out)
FILO(First In Last Out)
입출력단방향 / 제한적 접근
입: .push
출: .pop (맨뒤 1개만 뿅)
웹 앞/뒤로 가기
선입선출(ex.에컬)
FIFO(First In First Out)
LILO(Last In Last Out)
입출력고정(
입: .enqueue
출: .dequeue .shift
프린터 출력순서,임시기억장치구조
-장치사이의 속도차이, 시간차이
=>버퍼 buffer 
+원형 큐(Circular Queue)
트리 ... ...  
그래프 여러개의 점들이 서로 복잡하게
연결되어 있는 관계(ex.네트워크망)
 : 정점(vertex)과 간선(edge)-단방향,양방향

...  
버퍼 buffer 란?

에휴..J와 P사이..버퍼가필요할수밖에없겠네요

💃트리 및 그래프의 탐색 기범에 대해 이해할 수 있다.

 - Binary Search Tree를 이해할 수 있다.

 - BFS와 DFS의 개념을 이해하고 알고리즘 문제에서 사용할 수 있다.

💃자료구조를 활용하여 알고리즘 문제에 접근할 수 있다.

💃

 

 

 

🤸‍♀️Advanced Challenge

  • Array.prototype에는 Stack, Queue 사용을 위해 어떤 메서드가 존재하는가?
  • 배열로 Stack, Queue를 사용할 때 주의해야 할 사항은?
  • 배열로 Stack을 사용할때 push, pop 이외에 필요한 메서드는?
  • 배열로 Queue를 사용할 때 push, shift 이외에 필요한 메서드는?
  • javaScript의 배열과 Stack, Queue는 어떤 차이가 있나?

 

 

🏃‍♀️Futher Study

🤖검색

Comments