반응형

Programming 298

프레임워크 라이브러리 기본 개념 정리

이글을 쓰게된 원인 프레임워크와 라이브러리는 많이 들어보긴했지만 정확하게 정의를 하거나 설명하기에 개념이 부족한 것 같아서 정리하게됬습니다. 프레임워크란(Framework) 프레임워크의 개념을 찾아보면 "소프트웨어의 설계 및 구현을 재사용이 가능하도록 일련의 협업화된 형태로 클래스들을제공 하는 것" 또는 "소프트웨어의 특정문제 해결을 위한 상호협력하는 클래스와 인터페이스의 집합" 이라고 정의되어있습니다. 이는 간단하게 소프트웨어의 개발을 도와주는 틀, 뼈대라고 생각할 수 있으며, 프레임워크의 사용자는 이러한 틀 안에서 코드를 작성하여 소프트웨어를 완성하는 것 입니다. 인터페이스: 다른 클래스를 작성할 때 기본이 되는 틀을 제공하는 일종의 추상클래스 라이브러리란(Library) 라이브러리는 프레임워크 보다..

백준 1408 24 [c++]

#define _CRT_SECURE_NO_WARNINGS #include #include #include #include #include #include #include using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int h, m, s; int h2, m2, s2; scanf("%d:%d:%d", &h, &m, &s);//현재시간 입력 scanf("%d:%d:%d", &h2, &m2, &s2);//임무시작시간 입력 h2 -= h;//임무시작시간에서 현재시간을 뺀다 m2 -= m; s2 -= s; if (s2 < 0)//초단위가 0보다 작으면 60을 더하고 분단위에서 1을 뺀다 { s..

백준 5635 생일 [c++]

#include #include #include #include using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int n=0; cin >> n;//학생의 수 입력 vectorv(n);//첫번째 pair부터 연도,월,일,이름을 입력받을 벡터 for (int i = 0; i > v[i].second.second >> v[i].second.first >> v[i].first.second >> v[i].first.first; //미리선언한 벡터에 순서에 맞춰 입력 } sort(v.begin(), v.end());//오름차순으로 정렬 cout

백준 11098 첼시를도와줘 [c++]

#include #include using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int n;//테스트 케이스의 개수 int p;//고려할 선수의 수 int arr[100] = { 0, };//선수의가격을 저장할 배열 int max=0;//가장비싼선수비교를 위한 변수 int num = 0;//인덱스로 사용할 변수 int count = 0; string sarr[100];//선수이름을 저장할 배열 string rarr[100];//결과로 출력될 배열 cin >> n; for (int i = 0; i > p;//고려할선수의수를 입력 for..

백준 1157 단어공부 [c++]

#include #include #include using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); string str;//문자열을 입력받을변수 int arr[26] = { 0, };//각알파벳의 갯수를 저장하기 위한 배열(알파벳은26개존재) int maxNum=0;//가장많은 알파벳을 찾기위한 변수 char result;//결과출력을 위한 변수 cin >> str;//문자열입력 for (int i = 0; i = 'a')//입력한 문자열의 첫알파벳부터 소문자인지 확인 arr[str[i] - 'a'..

자료구조 탐색 기초 개념 정리

탐색(Search) 탐색은 말그대로 데이터를 찾는 방법으로서, 자료구조에서 효율적인 탐색을 위해서는 어떤방식으로 찾을까 뿐만아니라 효율적인 탐색을 위한 저장방법을 고민해야한다. 순차탐색: 정렬되지 않은 데이터를 대상으로 하는 탐색 이진탐색: 정렬된 데이터를 대상으로 하는 탐색 이진탐색트리 이진탐색트리는 이진트리에서 데이터의 저장규칙을 더한 것으로 이 저장규칙은 특정 데이터의 위치를 찾는데 사용한다. 이진트리: 모든 노드의 자식 노드가 각각 최대 2개인 트리 이진탐색트리의단점: 이진탐색트리의 조건을 만족하면서도 저장순서에 따라서 탐색의 성능이 크게 저하될 수 있다. 이진탐색트리 조건 1. 노드에 저장된 키는 유일해야한다. 2. 루트노드의 키가 왼쪽 서브트리를 구성하는 노드의 키값들과 비교했을때 가장 커야한..

백준 1312 소수 [c]

#define _CRT_SECURE_NO_WARNINGS #include #include int main() { int a, b, n; int result;//결과를 받을변수 scanf("%d %d %d", &a, &b, &n);//a,b,n 입력받기 for (int i = 0; i < n; i++)//n번째 자리수를 구하기 위해서 n번을 반복 { a %= b;//a와b를 나눴을때 나머지를 a에 저장 a *= 10;//a에 10을 곱함 result = a / b;//결과값 } printf("%d", result); return 0; } 나머지에 10을 곱하고 다시 나누면서 소수점자리를 찾아가는 방법이다.

반응형