본문 바로가기

C++

(12)
[C++] 삽입정렬 코드 구현 #include #include using namespace std; int *insertion_sort(int data[], int size) { for (int i = 1; i = 1; j--) { if (data[j - 1] > data[j]) swap(data[j - 1], data[j]); else break; } } return data; } int main() { int arr[10] = {5, 2, 7, 10, 9, 1, 3, 6, 8, 4 }; int *result; result = insertion_sort(arr, sizeof(arr)/sizeof(int)); for (int i = 0; i < 10; i++) cout
[C++] 선택정렬 코드 구현 #include #include using namespace std; int *selection_sort(int data[], int size) { int min; for (int i = 0; i < size; i++) { min = i; for (int j = i; j < size; j++) { if (data[j] < data[min]) min = j; } swap(data[i], data[min]); } return data; } int main() { int arr[10] = {5, 2, 7, 10, 9, 1, 3, 6, 8, 4 }; int *result; result = selection_sort(arr, sizeof(arr)/sizeof(int)); for (int i = 0; i < 10;..
[C++] 이중 연결 리스트 생성, 삽입, 삭제, 출력 코드 구현 #include #include #include using namespace std; typedef int element; typedef struct ListNode { element data; struct ListNode *llink; struct ListNode *rlink; }ListNode; ListNode *head = NULL; //노드 생성 ListNode *create_node(element data, ListNode *llink, ListNode *rlink) { ListNode *new_node; new_node = (ListNode *)malloc(sizeof(ListNode)); new_node->data = data; new_node->llink = llink; new_node->..
[C++] 단순 연결 리스트 생성, 삽입, 삭제, 출력 코드 구현 #include #include #include using namespace std; typedef int element; typedef struct ListNode { element data; struct ListNode *link; }ListNode; ListNode *head = NULL; //노드 생성 ListNode *create_node(element data, ListNode *link) { ListNode *new_node; new_node = (ListNode *)malloc(sizeof(ListNode)); new_node -> data = data; new_node -> link = link; return(new_node); } //특정 데이터를 가진 노드 삽입 void insert_..