본문 바로가기

공부/자료구조6

[자료구조] 그래프 그래프란? 정점(노드)와 간선(정점을 이어주는 선)들의 집합을 그래프라고 한다. 객체 간의 연결을 시각적으로 나타낸 것 트리도 그래프 중 하나다. 용어 정점(vertex) - 그래프를 형성하는 노드, V로 표현 간선(edge) - 노드를 연결하는 선, E로 표현 정첨 차수(degree of vertext) - 해당 노드에 연결된 간선의 개수 가중치(weight) - 간선에 대한 값, 문맥에 따라 다양한 것을 나타낼 수 있다. ex) 노드와 노드 사이의 거리를 표현 무지향성 그래프 ( undirected graph ) 간선 간에 방향이 없는 그래프 간선은 두 노드 간의 상호 연결을 암시한다. 반대는 Directed Graph = Digraph 그래프를 구현하는 두가지 방법 인접 행렬 ( adjacent m.. 2021. 8. 23.
[자료구조] 스택 포스팅 옮기는 중 github.com/trekhleb/javascript-algorithms/tree/master/src/data-structures/stack trekhleb/javascript-algorithms 📝 Algorithms and data structures implemented in JavaScript with explanations and links to further readings - trekhleb/javascript-algorithms github.com Stack 스택은 추상 자료형( ADT - abstract data type )이다 스택은 LIFO이다 스택은 선형 데이터 자료구조( linear data structures ) 이다. 추상 자료형 추상적 자료형은 구현 방법을.. 2021. 8. 23.
[자료구조] Linked List 예전 포스팅 옮기는 중 Linked List ( 연결리스트 ) github.com/trekhleb/javascript-algorithms/blob/master/src/data-structures/linked-list/README.ko-KR.md trekhleb/javascript-algorithms 📝 Algorithms and data structures implemented in JavaScript with explanations and links to further readings - trekhleb/javascript-algorithms github.com 선형 데이터 구조이다 논리적 저장 순서는 메모리의 물리적 저장 순서와 일치하지않는다 각각의 요소들은 자기 자신 다음의 요소를 가리킨다. 순서를.. 2021. 8. 23.
[자료구조] 해시테이블 이전 블로그 포스팅 다시 공부하면서 옮기는 중.. github.com/trekhleb/javascript-algorithms/tree/master/src/data-structures/hash-table trekhleb/javascript-algorithms 📝 Algorithms and data structures implemented in JavaScript with explanations and links to further readings - trekhleb/javascript-algorithms github.com www.youtube.com/watch?v=Vi0hauJemxA&t=1s 🎈해시테이블 키와 값의 구조를 가지는 자료구조 해시함수를 통해 원하는 값을 찾는다 해시함수(키) -> 해시코드 .. 2021. 8. 23.
[자료구조] 트리 예전 블로그에 썼던 글을 옮기면서 다시 자료구조를 보고 있다.. 새삼..내가 짠 코드인데 지금 읽는데 한번에 이해를 못한다. 충격 👍 👕 트리 github.com/trekhleb/javascript-algorithms/tree/master/src/data-structures/tree trekhleb/javascript-algorithms 📝 Algorithms and data structures implemented in JavaScript with explanations and links to further readings - trekhleb/javascript-algorithms github.com 다음 요소를 가리키는 포인터를 2개 가진 단방향 리스트의 일종 부모가 없는 노드 = 뿌리, 루트 자식이.. 2021. 8. 23.
알고리즘 - 기초 참고서적 - 처음만나는 알고리즘 알고리즘이란? 알고리즘은 절차다. 문제를 해결하기 위한 처리 절차를 구체적인 순서에 따라 표현한 아이디어 프로그램과 알고리즘 관계 알고리즘을 프로그래밍 언어로 기술하면 프로그램이 된다. 컴퓨터에게 알고리즘을 전달하는 도구가 프로그래밍 언어이다. 프로그램 작성과 알고리즘 프로그램의 작성은 기획, 설계, 프로그래밍, 디버그로 진행한다. 기획 - 프로그래밍의 시작은 요구다. 고객이 요구한 내용과 기능, 사양을 기록한 문서를 요구사항 정의서라고 한다. 설계 - 알고리즘이 속한 단계. 품질은 설계가 결정한다. 따라서 품질의 좋고 나쁨은 알고리즘이 결정한다. 프로그래밍 - 알고리즘을 결정한 후에 프로그래밍을 한다. = 코딩 디버그하기 - 테스트를 진행한다. 문서 작성하기 - 개발자와.. 2021. 6. 25.