본문 바로가기

Programming

BinSrchTree.h : 이진 탐색 트리 클래스 #ifndef ___BinSrchTree#define ___BinSrchTree//BinSrchTree.h : 이진 탐색 트리 클래스#include "BinaryTree.h" class BinSrchTree : public BinaryTree{public:BinSrchTree(void){}~BinSrchTree(void){} //이진 탐색 트리의 탐색 연산BinaryNode* search(int key) {BinaryNode* node = searchRecur(root, key);if (node != NULL)printf("탐색 성공 : 키값이 %2d인 노드 = 0x%x\n",node->getData(), node);elseprintf("탐색 실패 : 키값이 %2d인 노드 없음\n", key);retur.. 더보기
BinaryTree : 이진트리 클래스 #pragma once#ifndef ___BinaryTree#define ___BinaryTree//BinaryTree : 이진트리 클래스#include "BinaryNode.h"#include "CircularQueue_Binary.h" class BinaryTree {protected:BinaryNode* root;public:BinaryTree() : root(NULL) {}void setRoot(BinaryNode* node) { root = node; }BinaryNode* getRoot() { return root; }bool isEmpty() { return root == NULL; } //이진트리의 순회 연산 void inorder() { printf("\n inorder: "); inor.. 더보기
BinaryNode.h : 이진 트리를 위한 노드 클래스 #pragma once#ifndef ___BinaryNode#define ___BinaryNode//BinaryNode.h : 이진 트리를 위한 노드 클래스#include class BinaryNode{protected:int data;//트리에 저장할 데이터BinaryNode* left;//왼쪽 자식 노드의 포인터BinaryNode* right;//오른쪽 자식 노드의 포인터public:BinaryNode(int val = 0, BinaryNode* l = NULL, BinaryNode* r = NULL): data(val), left(l), right(r) {}void setData(int val) { data = val; }void setLeft(BinaryNode* l) { left = l; }vo.. 더보기
[C++] 백준 1003번 : 피보나치 함수 https://www.acmicpc.net/problem/1003 #include #include using namespace std; int main() {cin.tie(NULL);ios::sync_with_stdio(false); vector tmp; int tc;cin >> tc;int max = 0;for (int i = 0; i > n;tmp.push_back(n);if (max < n)max = n;}max++; int **fibonacci = new int*[max];for (int i = 0; i < max; i++)*(fibonacci+i) = new int[2]; fibonacci[0][0] = 1;fibonacci[0][1] = 0;fibona.. 더보기
윤년 참고 코드 #include "stdafx.h"#include int main(){int year, month, day, total_Day = 0, today=0;int yoill; printf_s("년 월 일 입력 : ");scanf_s("%d %d %d", &year, &month, &day); printf_s("\n%d년 %d월 %d일\n\n", year, month, day); //((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) ? printf_s("윤년\n") : printf_s("평년\n");bool a = ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) ? 1 : 0;if (a)printf_s("윤년\.. 더보기
1주차 - 답안 #include #define swap(type, x, y) do { type tmp = x; x = y; y = tmp; } while(0)//swap 함수를 정의함#define MAX_ARRAY 5 void selectionSort(int a[], int n);//입력받은 n개의 배열을 오름차순으로 선택정렬하는 함수void scanfAll(int a[], int n); //MAX_ARRAY 개의 입력받은 수로 배열을 초기화 하는 함수void printAll(int a[], int n); //MAX_ARRAY 개의 배열을 출력하는 함수 int main() {int ary[MAX_ARRAY]; scanfAll(ary, MAX_ARRAY);printAll(ary, MAX_ARRAY);//정렬 전select.. 더보기
1주차 - 윤년 && 선택정렬 선택정렬 selectionSort(ary, n) By_ pseudocode for i 더보기
Operating System-Chapter(1) 자원 관리자로서의 운영체제 -커널(kernel 또는 nucleus) : 운영체제에서 가장 빈번히 사용되는 기능들을 포함하고 있는 자원이다. 마이크로커널 구조(microkernel architecture) 마이크로커널 구조(microkernel architecture)는 주소공간, 프로레스 간 통신(IPC : interprocess comunication), 기본적인 스케줄링을 포함한 몇몇 소수의 핵심 기능만을 포함시킨다. 그 밖의 운영체제 서비스들은 서버라 불리는 프로세스에 의해 제공되는데, 이 프로세스들은 사용자 모드에서 수행되며마이크로 커널에 의해 일반 응용과 동일하게 취급된다. 이 방식을 채택하면 커널과 서버의 개발이 분리될 수 있다. 서버들은 운영체제와는 달리 특정 응용이나 수행환경의 요구 사항에.. 더보기