목록2021/06 (10)
DB-Engines Ranking DB-Engines Ranking은 DMBS의 인기도에 따라 순위를 기록합니다. (순위는 월마다 업데이트 된다.) https://db-engines.com/en/ranking DB-Engines Ranking Popularity ranking of database management systems. db-engines.com DB-Engines Ranking 기준 웹 사이트에서 시스템 언급 시스템에 대한 일반적인 관심 시스템에 대한 기술 토론의 빈도 시스템이 언급 된 구인 수 시스템이 언급 된 전문 네트워크의 프로필 수 주의) DB-Engines Ranking은 시스템 설치 수 또는 IT 시스템 내에서의 사용과 같은 점유율로 점수를 측정하지 않습니다. DB-Engines..
개요 컴퓨터 ? -> Compute 계산하다 -> Computer 계산하는 기계를 의미한다. 그래서 과거에는 컴퓨터공학과가 대부분 전산학과라고 많이 불러졌다. 컴퓨터는 하드웨어와 시스템 소프트웨어로 구성되고, 응용소프트웨어가 그것들을 이용하여 사용자와 대화하면서 프로그램을 처리한다. 하드웨어는 처리가 실제로 일어나게 해주는 물리적인 실체이다. 소프트웨어는 그러한 동작들이 수행될 시간을 지정해주는 명령들의 집합이다. 컴퓨터의 기본 구조 컴퓨터 기본 처리과정 -> 1) 필요한 데이터를 읽어서 2) 처리하고 3) 결과를 저장한다. 즉, Load – Processing – Store 컴퓨터 기본 구조 주기억장치에서 데이터를 읽어서 CPU가 처리하고 결과를 주기억장치에 저장한다. 무엇을 처리할 것인지는 I/O장치..
오라클은 DB 아카이브 로그 모드 환경에서 아카이브 로그 공간이 부족하여 장애가 빈번하게 발생합니다. 그래서 아카이브 로그를 주기적으로 삭제해주어야 하는데 가장 안전한 아카이브 로그 삭제 방법은 RMAN을 통하여 아카이브를 지우는 방법이 있습니다. (아카이브 로그 백업은 RMAN을 통해서 백업을 받고 3일 보관 및 3일 지난 것은 삭제하는 것으로 구성하는 것이 보통의 백업 구성 방법입니다.) 아카이브 로그 일일 발생량에 따라 백업 주기와 공간을 확보해야 합니다. 아래 쿼리를 이용하여 아카이브 발생량을 확인할 수 있습니다. select thread# "Thread#", substr(to_char(first_time,'yyyy/mm/dd'),1,10) "Day", decode(sum(decode(substr..
1. 문제정의 최소 신장 트리 ( Minimum Spanning Tree )란? 최소 신장 트리( MST )란, 주어진 그래프에서 최소한의 비용으로 트리를 만드는 것을 의미합니다. BFS , DFS는 각 규칙에 따라 모든 정점들을 연결하는 트리를 생성했었습니다. MST도 마찬가지로 모든 정점들을 연결하는 트리를 생성하는데, 이 때 규칙은 최소한의 비용이 되는 그래프가 되도록 하는 것입니다. 2. 문제 설계 Prim's 알고리즘Prim's 알고리즘은 최소 우선순위 큐에서 가중치가 가장 작은 정점을 선택한 후,그 정점의 인접한 정점들에 대해 key 값과 연결된 가중치 값을 비교하여 key값을 갱신할 지 말지 결정합니다. 3. 구현 #include #include #define V 9 //다음에 수행할 정점을..
1. 문제정의 최소 신장 트리 ( Minimum Spanning Tree )란? 최소 신장 트리( MST )란, 주어진 그래프에서 최소한의 비용으로 트리를 만드는 것을 의미합니다. BFS , DFS는 각 규칙에 따라 모든 정점들을 연결하는 트리를 생성했었습니다. MST도 마찬가지로 모든 정점들을 연결하는 트리를 생성하는데, 이 때 규칙은 최소한의 비용이 되는 그래프가 되도록 하는 것입니다. 2. 문제 설계 Kruskal's 알고리즘Kruskal's 알고리즘은 두 개의 트리를 연결하는 모든 간선 중 가장 작은 간선( u , v )를 찾아 MST의 부분집합에 추가합니다. Kruskal's 알고리즘은 안전 간선을 연결할 때 Union - Find 자료구조를 이용합니다. 3. 구현 include #include..
1. 문제정의 그림과 같이 4 x 4 개의 격자 형태로 배치된 16개의 시계가 있다. 이 시계들은 모두 12시, 3시, 6시, 혹은 9시를 가리키고 있다. 이 시계들이 모두 12시를 가리키도록 바꾸고 싶다. 시계의 시간을 조작하는 유일한 방법은 모두 10개 있는 스위치들을 조작하는 것으로, 각 스위치들은 모두 적게는 3개에서 많게는 5개의 시계에 연결되어 있다. 한 스위치를 누를 때마다, 해당 스위치와 연결된 시계들의 시간은 3시간씩 앞으로 움직인다. 스위치들과 그들이 연결된 시계들의 목록은 다음과 같다. 0번 스위치 -> 0, 1, 2 시계와 연결됨 1번 스위치 -> 3, 7, 9, 11 시계와 연결됨 2번 스위치 -> 4, 10, 14,15 시계와 연결됨 3번 스위치 -> 0, 4, 5, 6, 7 시..
1. 문제정의 H*W 크기의 게임판이 있습니다. 게임판은 검은 칸과 흰 칸으로 구성된 격자 모양을 하고 있는데 이 중 모든 흰 칸을 3칸짜리 L자 모양의 블록으로 덮고 싶습니다. 이 때 블록들은 자유롭게 회전해서 놓을 수 있지만, 서로 겹치거나, 검은 칸을 덮거나, 게임판 밖으로 나가서는 안 됩니다. 위 그림은 한 게임판과 이를 덮는 방법을 보여줍니다. 게임판이 주어질 때 이를 덮는 방법의 수를 계산하는 프로그램을 작성하세요. 입력 력의 첫 줄에는 테스트 케이스의 수 C (C 1) //겹쳐질 경우 ok = false; } return ok; } //board의 모든 빈 칸을 덮을 수 있는 방법의 수를 반환 //board[i][j]=1 이미 덮인 칸 혹은 검은 칸 //board[i][j]=0 아직 덮이지 ..
1. 문제정의 안드로메다 유치원 익스프레스반에서는 다음 주에 율동공원으로 소풍을 갑니다. 원석 선생님은 소풍 때 학생들을 두 명씩 짝을 지어 행동하게 하려고 합니다. 그런데 서로 친구가 아닌 학생들끼리 짝을 지어 주면 서로 싸우거나 같이 돌아다니지 않기 때문에, 항상 서로 친구인 학생들끼리만 짝을 지어 줘야 합니다. 각 학생들의 쌍에 대해 이들이 서로 친구인지 여부가 주어질 때, 학생들을 짝지어줄 수 있는 방법의 수를 계산하는 프로그램을 작성하세요. 짝이 되는 학생들이 일부만 다르더라도 다른 방법이라고 봅니다. 예를 들어 다음 두 가지 방법은 서로 다른 방법입니다. (태연,제시카) (써니,티파니) (효연,유리) (태연,제시카) (써니,유리) (효연,티파니) 입력 입력의 첫 줄에는 테스트 케이스의 수 C ..