때는 2002년 3월, 대학교 2학년 때 이다. 컴퓨터 공학 전공으로 전공필수 과목으로 처음 Data Structure를 접했다.

당시 1학년 2학기 때, C 언어를 막 배운 상태였고, 2학년 올라오자마자 자료구조를 배우는데 java언어를 통해 배웠다.

당시에는 java 1.2 였던걸로 기억하는데, 정확하지는 않다.

 

아무튼 아무것도 모르는 학부 2학년인데, 갑자기 Stack이니, Queue 이니, Linked List 이니 알수 없는 단어를 쏟아내는 과목이 매우 버거웠다. (2학년때는 공부를 열심히 하지도 않았다!!!)

 

당시에는 이 과목의 필요성이나, 여기서 작성하는 프로그램들이 무엇을 하는것인지 이해할수가 없었고, 숙제로 구현해 오라고 하는데, 대체 무엇을 구현하는 지 조차 알수가 없었다.

당연히 성적은 잘 나오지 않았고, 나에겐 뭔가 숙제 같은 과목이 되었다.

 

나중에 군대다녀오고 복학후에 다시 재수강을 하긴 하였지만, 사실 재수강때 기억은 나질 않는다.

 

지금 다시 그때 과목을 배운다면 참 재밌게 배웠겠다는 생각이 들고, 또 개발자로 10년을 지냈지만 여전히 사용한다는 점에서 매우 중요했던 과목이라고 생각을 하게 되었다.

 

당시에 공부 하던 책을 꺼내보았다.

 

https://www.amazon.ca/Data-Structures-Algorithms-Michael-Goodrich/dp/0471383678

짠! 이책이다..  무려 하드커버...

 

지금부터 여기에 나와있는 자료구조들을 하나하나 구현해보고자 한다.

 

 

 

Data Structure Implement Description
Stack https://ijeee.tistory.com/30 https://github.com/jeng832/DataStructure/tree/master/Stack

Queue

https://ijeee.tistory.com/31 https://github.com/jeng832/DataStructure/tree/master/Queue

Linked List

   

Double-Ended Queue

   

Vector

   

List

   

Sequnce

   

Iterator

   

Tree

   

Binary Tree

   

Priority Queue

 

   

Heap

   

Dictionary

   

Hash

   

Ordered Dictionary

   

Binary Search Tree

   

AVL Tree

   

Multi-Way Search Tree

   

(2,4) Tree

   

Red-Black Tree

   

Graph

   

Directed Graph

   

Weighted Graph

   

많기도 하다...-_- 다할수 있을까?;;;;;

 

'Development > Data Structure' 카테고리의 다른 글

Queue  (0) 2020.08.23
Stack  (0) 2020.06.20

+ Recent posts