전체 글(110)
-
[OS] Chapter1 Computer System Overview
해당 강의는 HPC Lab. KOREATECH의 유투브를 보고 정리한 내용입니다. 하드웨어는 크게 3가지로 나뉜다. - 프로세서 : 계산,동작제어을 담당. ex) CPU, GPU, 응용전용처리장치 프로세서는 제어장치, 레지스터, 연산장치로 나뉘어짐. 레지스터 : CPU안에 존재하는 가장 빠른 메모리. 용도에 따른 분류 : 전용 레지스터, 범용레지스터 사용자 변경 가능여부에 따른 분류 : 사용자 가시 레지스터, 불가시 레지스터 저장 정보 종류에 따른 분류 : 데이터 레지스터, 주소 레지스터, 상태 레지스터 - 프로그램 카운터 레지스터(PC) : 다음 실행할 명령어와 주소 보관 - 명령어 레지스터(IR) : 현재 실행하는 명령어 보관 - 누산기(ACC) : 데이터 일시저장. 프로그램을 실행하게 되면, 디스크..
2021.07.23 -
현대 IT&E 퓨처넷 채용확정형 sw 개발자 양성 교육 합격 후기
KOSA에서 올린 공고를 보고 지원하게되었다.총 이런 과정을 거친다고 한다.좋은 점은 채용 확정형이라는 것. 보통 교육들이 정규직 채용을 전제로 하는 것은 거의 없는데 해당 과정의 경우 채용을 50 퍼 이상으로 못 박아두고 있어서 타 과정에 비해 좋다고 느껴서 지원하였다. 1기의 경우 70 퍼 이상을 채용했다고 한다.현대 IT&E 퓨처넷 기업 연계 프로젝트를 진행한다는 것도 매우 맘에 들었다.아무래도 학생들끼리 진행하는 프로젝트보다는 코드의 완성도라던지, 계획에 있어서 유리할 수밖에 없기 때문이다. 자바를 통해서 학습을 진행한다고 한다.웹기술은 Spring을 학습한다고 한다.또 맘에 들었던 점은 서류전형과 면접전형만 보면 통과한다는 점. 아무래도 채용 프로세스가 적으면 적을수록 취준생 입장에서 편한 건 ..
2021.07.23 -
[Spring] Spring MVC framework를 사용한 웹은 어떻게 작동할까?
Spring MVC 패턴에서 url을 통해 response를 날린 경우 어떻게 처리 되는지 알아보자. 1. 클라이언트(사용자)가 주소창에 URL을 입력 2. 브라우저는 DNS를 운영하는 서버를 통해 접속하려는 서버의 IP주소를 받아온다. 예를 들어 사용자가 www.naver.com을 접속 시도할 경우, ping 명령어를 통해 확인해보면 DNS 서버에서 125.209.222.142로 IP 주소를 리턴해, 해당 IP주소로 서버에 요청을 받음을 알 수 있다. 3. 브라우저가 DNS서버에서 받아온 IP주소에 위치한 서버에 요청을 보낸다. (해당 IP주소에 위치한 서버가 Spring MVC를 따른다고 가정하자) 4. 4-1. 해당 서버의 Dispatcher Servlet이 request를 받는다. 4-2. Han..
2021.07.19 -
백준 알고리즘 풀이 13460번 - 구슬 탈출 2
https://www.acmicpc.net/problem/13460 13460번: 구슬 탈출 2 첫 번째 줄에는 보드의 세로, 가로 크기를 의미하는 두 정수 N, M (3 ≤ N, M ≤ 10)이 주어진다. 다음 N개의 줄에 보드의 모양을 나타내는 길이 M의 문자열이 주어진다. 이 문자열은 '.', '#', 'O', 'R', 'B' www.acmicpc.net 삼성 코테에 기출되었던 문제. - bfs 문제 알고리즘 1. 현재 파란 구슬의 좌표와, 빨간 구슬의 좌표를 queue에 넣는다. 2. queue에서 하나 꺼내서, 이동할수 있는 경로로 이동한다. 이때, 다음 방문할 좌표가 벽이거나, 구멍을 만나거나, 맵의 사이즈에 맞지않는 다면, 이동을 중지한다. ans를 1더해준다. 이동후 좌표가 이미 방문한 곳..
2021.07.10 -
백준 알고리즘 풀이 1759번 - 암호 만들기
https://www.acmicpc.net/problem/1759 1759번: 암호 만들기 첫째 줄에 두 정수 L, C가 주어진다. (3 ≤ L ≤ C ≤ 15) 다음 줄에는 C개의 문자들이 공백으로 구분되어 주어진다. 주어지는 문자들은 알파벳 소문자이며, 중복되는 것은 없다. www.acmicpc.net - 백트래킹 문제 시간 복잡도 dfs 시간복잡도 : O(V+E) 정렬 시간복잡도 : O(NlogN) 따라서 big O = O(NlogN) 소스코드 #include #include using namespace std; int l,c; char ans[16]; char arr[16]; void combi(int start,int cnt){ if(cnt == l){ int check = false; int ..
2021.07.07 -
백준 알고리즘 풀이 14888번 - 연산자 끼워넣기
https://www.acmicpc.net/problem/14888 14888번: 연산자 끼워넣기 첫째 줄에 수의 개수 N(2 ≤ N ≤ 11)가 주어진다. 둘째 줄에는 A1, A2, ..., AN이 주어진다. (1 ≤ Ai ≤ 100) 셋째 줄에는 합이 N-1인 4개의 정수가 주어지는데, 차례대로 덧셈(+)의 개수, 뺄셈(-)의 개수, www.acmicpc.net - 순열문제 or dfs 문제 알고리즘 1. 숫자는 고정 시켜두고 순열 알고리즘을 통해 기호들을 배열함 소스코드 #include using namespace std; char ca[5] = {' ','+','-','X','/'}; char arr[12]; int nums[12]; int n; int maximum = -100000001; in..
2021.07.06 -
백준 알고리즘 풀이 10973번 - 이전 순열
https://www.acmicpc.net/problem/10973 10973번: 이전 순열 첫째 줄에 입력으로 주어진 순열의 이전에 오는 순열을 출력한다. 만약, 사전순으로 가장 처음에 오는 순열인 경우에는 -1을 출력한다. www.acmicpc.net - 순열 문제 알고리즘 1. 뒤에서부터 n[i] > n[i+1]인 i를 찾아서 index에 저장 2. 뒤에서부터 index까지 arr[index] > arr[j]인 j를 찾아서, arr[index]와 arr[j]를 바꾸어준다. 3. index+1부터 수열 끝까지 뒤집어준다. 시간 복잡도 O(N) 소스코드 #include using namespace std; int arr[10001]; int n; int check = false; void reverse..
2021.07.06 -
백준 알고리즘 풀이 10971번 - 외판원 순회 2
https://www.acmicpc.net/problem/10971 10971번: 외판원 순회 2 첫째 줄에 도시의 수 N이 주어진다. (2 ≤ N ≤ 10) 다음 N개의 줄에는 비용 행렬이 주어진다. 각 행렬의 성분은 1,000,000 이하의 양의 정수이며, 갈 수 없는 경우는 0이 주어진다. W[i][j]는 도시 i에서 j www.acmicpc.net - dfs 문제 알고리즘 1. 2차원 배열을 이용해서 N개의 노드와 엣지를 표현해준다. 2. dfs를 1부터 돌려주는데, count가 N이 된다면/ 더이상 방문할 노드가 없다면, 해당 dfs 종료. 시간 복잡도 dfs의 시간복잡도인 O(V+E). 모든 노드가 다 이어져있는 경우 최대이므로 해당 상황을 가정한다면, O(2N) 소스코드 #include us..
2021.07.05