Data Structure
-
Hash 구현해보기 JavaData Structure/Data Structure 구현 2020. 3. 6. 17:35
해시란 키에 해당하는 고유한 숫자 값을 통해 해당하는 값(value)으로 바로 찾아갈 수 있는 O(1)의 복잡도를 띄는 굉장히 빠른 알고리즘이다. 자바에서는 HashMap 이 예이다. https://stackoverflow.com/questions/3069709/what-is-a-hash-function-in-java What is a hash function in java? I have check out this Wikipedia page on it, but I still don't understand it. Can someone please help my dim-witted mind to understand the concepts of hashing, hashtable/hashmap, and hash..
-
-
-
문제 04-1 연결 리스트 관련 코드에 익숙해지기Data Structure/윤성우의 열혈 자료구조 2019. 9. 5. 20:55
예제에서는 노드를 머리가 아닌 꼬리에 추가하였다. 따라서 3 - 2 - 7 - 8 순으로 연결되어 있는 리스트에 5를 추가로 삽입하면 3 - 2 - 7 - 8 - 5의 순으로 저장이 된다. 그런데 이번에는 다음 순으로 저장이 되도록 예제를 변경해 보고자 한다. 5 - 8 - 7 - 2 - 3 즉 연결리스트의 머리에 노드가 추가되도록 하자. 코드 #include #include #pragma warning(disable:4996)typedef struct _node{int data;struct _node *next;} Node;int main(void){Node * head = NULL;Node * tail = NULL;Node * cur = NULL;while (1){int temp;printf("자연수..
-
문제 03 -1 리스트 라이브러리의 활용Data Structure/윤성우의 열혈 자료구조 2019. 9. 4. 20:22
문제 03 - 1 1. 리스트를 생성 및 초기화 한 다음, 정수 1부터 9 까지 리스트에 저장 2. 리스트에 저장된 값을 순차적으로 참조하여 그 합을 계산하여 출력 3. 리스트에 저장된 값들 중 2의 배수와 3의 배수에 해당하는 값을 모두 삭제. 4. 마지막으로 리스트에 저장된 데이터를 순서대로 출력 코드 ( C ) #include #include "ArrayList.h" int main(void){// ArrayList의 생성 및 초기화List list;int data;int sum = 0;ListInit(&list); // 정수 1부터 9 까지 저장for (int i = 1; i < 10; ++i)LInsert(&list, i);// 합의 계산 및 출력if (LFirst(&list, &data)) {..