본문 바로가기

Computer Science

How to learn the algorithm? Learning algorithms is a crucial skill for any programmer. Algorithms are the set of rules that help in solving a problem in a finite number of steps. Here are some tips on how to learn algorithms in programming. 1. Start with the basics: Before diving into complex algorithms, start with the basics. Learn about data structures like arrays, linked lists, queues, and stacks. Understand how they wo.. 더보기
DMZ (Demilitarized Zone) ​ ​ 한 줄 요약 ​ DMZ란 내·외부 네트워크 구간 사이에 위치한 중간지점으로, 침입차단시스템 등으로 접근 제한 등을 수행하지만 외부 네트워크에서 직접 접근이 가능한 영역을 뜻합니다. 자세한 설명 ​ 방화벽을 공부하다 보면 내부 네트워크 구간, 외부 네트워크 구간 그리고 DMZ 구간이라는 용어가 등장합니다. 오늘은 바로 DMZ 구간에 대해 알아보도록 하겠습니다. ​ 먼저 내부 네트워크 구간부터 알아볼까요? 내부 네트워크 구간이란 일정 조직 내에서 인터넷이 아닌 내부 네트워크를 통해 PC끼리 자원을 공유하게 하거나 그룹웨어 등을 사용할 수 있게 하는 근거리 통신망(LAN, Local Area Network)을 뜻합니다. 외부 네트워크 구간은 이와 반대로 일정 조직을 넘어 정보를 교환할 수 있는, 즉 인.. 더보기
시간복잡도 개념 1 시간 복잡도 나타나는 수 1(constant) : 입력자료의 수에 관계없이 일정한 실행시간 갖음 Log N : 입력자료의수에 따라 시간이 점점 시간이 조금씩 증가함 - 주로 큰 문제를 일정한 크기를 갖는 작은 문제로 쪼갤때 나타나는 유형. 예) 효율이 좋은 검색 알고리즘.. 이 뭐가 있드라. 이진탐색 같은 것 - Log­2n N(Linear) : 입력 자료의 수에 따라 선형적인 실행 시간이 걸리는 경우- 입력자료 각각에 일정량(시간)이 할당되는 경우 N Log N : 이것은 주로 큰문제를 일정한 크기를 갖는 문제로 쪼개고(Log N), 다시 그것들을 하나로 모으는 경우에 나타남 (N). 예) 효율 좋은 정렬 알고리즘. quick sorting, heap sorting 등. link: http://wr.. 더보기
IT직군에서 많이 쓰이는 SI, SM, SE, PG 등 용어의 의미 -SI(System Integration) : 직역하자면 시스템 통합으로서 사전적 의미로서는 네트워크, 하드웨어, 소프트웨어 등 IT와 관련된 요소들을 결합시켜 하나의 정보시스템으로 운영될 수 있도록 구축해주는 IT사업을 말한다. 흔히 솔루션 업체에서 프로젝트를 발주받아 그 프로젝트를 작업하는 사람이라고 하면 SI직군에 속하는 사람이라고 보면 된다. 각종 프로젝트에 맞춰 최적화된 언어가 있으므로 그만큼 여러 프로그래밍 언어에 익숙한 사람들이 대부분이다. -SM(System Management) : 직역하면 시스템 관리로서 말 그대로 관리에 초점이 맞춰져있는 업무를 의미한다. 시스템의 운영에 대한 전반적인 업무를 담당하며 말 그대로 회사의 시스템이 잘 굴러가게 유지관리하는 업무를 생각하면 된다. HW와 O.. 더보기
[EXCEL] COUNTIFS 함수 사용법 엑셀 COUNTIFS 함수를 소개합니다.COUNTIFS 함수는 여러 조건에 일치하는 셀을 계산합니다."0"이외의 셀이나 특정 문자열이 들어있는 셀을 계산하고자 할 때 사용합니다.엑셀 2003 이전 버전에서는 "COUNTIF 함수" 를 사용합니다. 여러 조건에도 대응할 수 있습니다. 구문 COUNTIFS (범위 1 조건 1)COUNTIFS (범위 1, 조건 1, 범위 2, 기준 2 ...) 사용 예제 * 조건이 하나인 경우 셀 "C2"의 값과 같은 셀을 셉니다. 결과는 D6에 표시됩니다. =COUNTIFS(B2:B5, C2) "0"이외의 셀을 셉니다. 결과는 E6에 표시됩니다. =COUNTIFS(B2:B5, "0") "엑셀"셀을 셉니다. 결과는 D6에 표시되는 것입니다. =COUNTIFS(B2:B5, "엑.. 더보기
[NAS] Synology 윈도우10 SMB 공유폴더 접근 안될 때 최근 윈도우 10 업데이트 후 공유 폴더에 접근이 되지 않는 문제가 생겼다. 보안 취약점 때문에 SMB1을 비활성으로 수정 되어 발생하는 문제로 보인다. NAS에서 대처 방안 1 나스 접속 > 제어판 > 파일 서비스 > 고급 설정 > 최대 SMB 프로토콜 > SMB3 으로 변경 윈도우에서 대처 방안 1 \\나스명 으로는 접근이 안되는 것으로 보인다. \\192.xxx.xxx.xxx 형태로 접근해 본다. 윈도우에서 대처 방안 2 제어판 > 사용자 계정 > Windows 자격 증명 관리 Windows 자격 증명 > 자격 증명 추가 ※ 추가 되어 있다면 오히려 삭제 후 접근해 본다. 윈도우에서 대청 방안 3 제어판 > 프로그램 제거 또는 변경 > Windows 기능 켜기/끄기 SMB 1.0/CIFS 파일 공유.. 더보기
[SQL] 데이타 정렬해서 가져오기(SELECT) [SQL] 데이타 정렬해서 가져오기(SELECT) 1. 오름차 정렬 SELECT * FROM 테이블명 ORDER BY 정렬필드명 ASC; 2. 내림차 정렬 SELECT * FROM 테이블명 ORDER BY 정렬할필드명 DESC; 3. 여러개의 컬럼 정렬 - 정렬필드명1을 기준으로 오름차 정렬 -> 정렬필드명2 내림차 정렬 -> 정렬필드명3 오른차 정렬 SELECT * FROM 테이블명 ORDER BY 정렬필드명1 ASC, 정렬필드명2 DESC, 정렬필드명3 ASC; 4. 정렬할때 우선 순위 !"#$%&'()*+-./0123(숫자):;?@ABCD(대문자)[\]^_`abcd(소문자){|}~ 더보기
엑셀을 이용하여 간트 차트 (Gantt chart) 만들기 대학생일 때 프로젝트 하면 거의 항상 들어갔던 내용 중 하나가 간트차트 (Gantt chart) 였어요. 그 때는 엑셀을 자주 사용할 일이 없어서 그냥 피피티에 표를 그려서 사용하거나 간트차트 만드는 프로그램을 사용했었는데 알고보니 엑셀로도 쉽게 간트차트를 만들 수 있었네요. 간트차트란? 1919년 미국의 간트가 창안한 것으로 작업계획과 실제의 작업량을 작업일정이나 시간으로 견주어서 평행선으로 표시하여 계획과 통제기능을 동시에 수행할 수 있도록 설계된 막대도표(bar chart)로 ‘막대그래프 차트’라고도 한다. (출처 : 네이버 지식백과) 1. 작업 (& 카테고리 구분), 시작일, 기간, 종료일이 적힌 일정표를 만들어주세요. 종료일이나 기간은 계산될 수 있도록 나타내주세요. 시작일로부터 기간을 안다면,.. 더보기
[MFC] 투명 윈도우 만들기 [MFC] 투명 윈도우 만들기 더보기
[MFC] 중복실행방지 //OnInitDialog 에서 처음실행할때 확인 HANDLE hEvent; hEvent = CreateEvent(NULL, FALSE, TRUE, AfxGetAppName()); //어플이름으로 확인 if ( GetLastError() == ERROR_ALREADY_EXISTS) { AfxMessageBox(_T("Already running..")); exit(0) ; } //실행중인 어플 내부에서 프로그램 띄위기 SHELLEXECUTEINFO sei; ::ZeroMemory(&sei, sizeof(SHELLEXECUTEINFO)); sei.cbSize = sizeof(SHELLEXECUTEINFO); sei.lpFile = _T("실행할 프로그램 주소~~~(e.g c:\test.exe"); sei... 더보기