Algorithms/Theory 2

[Data Structures][1]Singly Linked List

단일 연결리스트는 인덱스를 이용한 참조는 힘들지만 데이터 삽입과 제거가 용이하다. 다음과 같은 구조를 가지고 있다. 1. 먼저 typedef struct를 이용해 구조체를 만들어 줌 2. 구조체에는 int/float/double/char 등등 의 데이터 부분과 Node 포인터인 next 가 만들어져야 한다. 3. Alias는 Node로 설정. 4. 전역에서 head 노드 포인터 변수를 만들어 준다. head는 자료의 시작지점이라고 생각하면 된다. - 전역에서 만들어주는 이유는 추후 함수형으로 프로그래밍을 할 때, 함수로 찾기 편하게 하기 위해서이다. 5. main 함수에서 head를 동적할당 시켜준다.. 6. node1을 동적할당 합니다. node1의 데이터에 들어가는 값은 1로 한다. node2도 동적..

Algorithms/Theory 2019.08.24

[Data Structures][0]Array

배열(Array)는 자료를 나열하고 접근할 때 아주 편리. 배열의 장점: 1) 특정한 원소로 즉시 접근할 수 있음 하지만 자료가 100000개 정도 있고, 2번째 요소를 지우고자 한다면 뒤에 있는 99998개의 요소를 한 칸 앞으로 덮어쓰기 해 주어야만 한다. 또 맨 앞에 요소를 추가할 때는 배열을 모두 한 칸씩 뒤로 미룬 다음 배열의 0번째 인덱스에 값을 입력한다. 코드상으로는 이렇게 표현할 수 있다. #define _CRT_SECURE_NO_WARNINGS #include #define INF 10000 int arr[INF]; int count = 0; void addBack(int data) { arr[count] = data; count++; } void addFirst(int data) { f..

Algorithms/Theory 2019.08.23