[회고] 신입 iOS 개발자가 되기까지 feat. 카카오 자세히보기
반응형

💻 CS 193

Linux - 파일 탐색

locate locate [파일형식]으로 시스템에 존재하는 파일을 탐색할 수 있다. 디렉토리를 탐색하여 결과를 나타내는 것이 아니라, DB를 탐색하는 것이기 때문에 속도가 빠르다. locate가 사용하는 DB를 mloacte라고 부른다. (설치되어있지 않을 경우 sudo apt install mlocate로 설치해주어야함) sudo updatedb를 활용해 DB가 업데이트된다. (이는 따로 수행하지 않아도 시스템이 정기적으로 수행한다.) find find [파일형식]으로도 파일탐색이 가능하다. 다양한 옵션 및 부가기능을 제공하기 때문에 자세한 탐색에서는 locate보다 더 좋다. 단, 디렉토리를 직접 탐색하는 것이기 때문에 속도가 조금 느리다. https://kb.iu.edu/d/admm whereis ..

Linux - Shell

shell & kernel 명령어를 입력하면 컴퓨터 내부에서는 shell이 이를 받아들이고, 명령어를 해석하여 kernel을 통해 하드웨어를 조작한다. 즉, 사용자가 입력한 명령어를 해석하는 프로그램이 shell인 것이다. linux에는 여러가지의 shell이 존재하기 때문에, 개인에게 맞는 shell을 사용하면 된다. bash & zsh shell에는 대표적으로 bash와 zsh가 있다. echo $0 커맨드를 사용하면 현재 어떤 shell을 사용중인지 알 수 있다. 딱히 설정하지 않았다면 bash를 사용중일 것이다. sudo apt-get install zsh를 입력하면 zsh를 설치할 수 있고, zsh를 입력하면 shell이 zsh로 변경된다. bash를 입력하면 다시 bash로 변경된다. zsh는..

Linux - IO Redirection

IO Redirection 위 그림을 보면 linux process의 input과 output 구조를 잘 이해할 수 있다. 말그대로 Input과 Output의 방향을 바꾼다라는 뜻이다. $ ls -l > result.txt 기존 stdoutput 대상은 화면이었지만, 위 명령어에서 >가 IO Redirection을 진행하여 ls -l의 stdoutput 대상이 result.txt가 된다. >는 1>과 같은 의미로 stdoutput을 redirection한다. (stderr는 redirection하지 않는다.) 2>는 stderr를 redirection한다. (stdoutput은 redirection하지 않는다.) 1>과 2>를 함께 사용할 수도 있다. stdoutput이 발생하면 1>를 수행하고 stde..

Linux - apt

패키지매니저 명령어만으로 각종 프로그램들을 쉽게 설치할 수 있도록 도와준다. 리눅스의 패키지 매니저에는 대표적으로 apt가 있다. yum도 존재하지만 사용법은 유사하니 apt만 익혀놓으면 yum을 사용하는 것도 어렵지 않다. apt $ sudo apt-get update : 패키지매니저의 목록을 최신으로 업데이트한다. $ sudo apt-cache search [text] : 설치가능한 패키지 목록 중 이름 혹은 설명에 해당 text가 포함된 패키지를 출력한다. $ sudo apt-get install [name] : 해당 name의 패키지를 install한다. $ sudo apt-get upgrade [name] : 해당 name의 패키지를 upgrade한다. (최신버전 설치) name을 입력하지 않으..

Mysql - 기초명령어 정리

DB 관련 DB 생성 CREATE DATABASE `DB이름` CHARACTER SET utf8 COLLATE utf8_general_ci CHARACTER SET utf8 COLLATE utf8_general_ci는 한글인코딩 설정 DB 삭제 DROP DATABASE `DB이름`DB 확인 SHOW DATABASES선택 USE `DB이름`테이블 관련 테이블 생성 CREATE TABLE table_name ( column_name1 data_type, column_name2 data_type ) [ENGINE=engine_name] [DEFAULT CHARSET=utf8] InnoDB, Cluster (NDB), myisam 등의 엔진존재 테이블 확인 SHOW tables;스키마 확인 DESC `테이블명`..

[알고리즘 연습] 연속된 자연수의 합 (by. C++)

연속된 자연수의 합 양의 정수 N이 입력 2개 이상의 연속된 자연수의 합으로 정수 N을 표현하는 방법 출력 예 : N=15이면 7+8=15, 4+5+6=15, 1+2+3+4+5=15 총 3가지의 경우가 존재한다. 각 경우의 수도 '1 + 2 + 3 + 4 + 5 = 15'의 형태로 출력할 것 (마지막에 경우의 수 출력) 풀이1 (단순접근) #include #include #include using namespace std; int main() { int n, i, p1=1, p2=2, sum, check=0; cin >> n; while (p1

[알고리즘 연습] 교집합(투포인터 알고리즘) (by. C++)

교집합(투포인터 알고리즘) 정수 N을 입력받고 N개의 정수를 입력받는다. (집합A) 정수 M을 입력받고 M개의 정수를 입력받는다. (집합B) 집합A와 집합B의 교집합을 오름차순으로 정렬하여 출력하시오. 풀이 #include #include #include using namespace std; int main() { int n, m, i, p1=0, p2=0, p3=0; cin >> n; vector a(n); for(i=0; i> a[i]; } sort(a.begin(), a.end()); cin >> m; vector b(m); for(i=0; i> b[i]; } sort(b.begin(), b.end()); vector c(m+n); while(p1

[알고리즘 연습] 3등의 점수 (by. C++)

3등의 점수 100점 만점 기준의 점수 배열이 N개 주어졌을 때, 이 중 3등의 점수를 찾아 출력하라. 각 등수별 인원은 무시하고, 점수만이 등수의 기준이 된다. (100점 3명, 98점 3명, 95점 3명이면 95점 3명 모두 3등이다.) 풀이 #include #include using namespace std; int main() { int n, i, one, two, three; cin >> n; vector a(n); for(i=0; i> a[i]; } one = -2147000000; two = -2147000000; three = -2147000000; for (i=0; i

[알고리즘 연습] N!의 표현법 (feat. 소인수분해) (by. C++)

N!의 표현법 정수 N을 입력 받는다. (N>=2) N!을 소인수 분해하고 이를 N! = a b c d ...의 형태로 표현하라. a b c d는 모두 소수로 작은 숫자부터 차례대로 표현한다. N보다 작은 소수만 표기하면 된다. (5! = 3 1 1 이면 소수 2가 3개, 소수 3이 1개, 소수 5가 1개로 소인수 분해된다는 뜻) 풀이 #include #include using namespace std; int main() { int i, j, n, tmp; cin >> n; vector ch(n+1); for (i=2; i

반응형