일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 오블완
- sql
- 아이패드다이어리
- libasm
- 오라클
- 네트워크
- 티스토리챌린지
- CI
- 인공지능
- javascript
- 스프링부트
- 소켓
- 42seoul
- IOS
- AI
- 리눅스
- 프로그래밍언어론
- 스프링부트 웹 소켓
- 다이어리
- MySQL
- 데이터베이스
- CD
- swift
- Spring
- jenkins
- Xcode
- 스프링
- springboot
- DBMS
- JPA
- Today
- Total
목록Computer Engineering (179)
Hi yoahn 개발블로그
1. 파일 종류- 일반 파일 : 디스크에 저장- directory: 디렉토리에 포함된 파일들의 목록을 저장하는 파일, 디스크에 저장됨- special file 각종 I/O 장치들을 나타내는 파일 (I/O 장치마다 스페셜 파일 제공 I/O장치를 일반 파일과 동일한 방법으로 사용할 수 있음 $ ls -l-rw-r--r-- 1 user1 group 1234 3월 4일 15:24 readme.txt파일 종류- 일반 파일d 디렉토리b, c 스페셜 파일l 심볼릭 링크 파일 접근 권한 2. directory 구조트리 모양의 계층 구조/ (루트 디렉토리): 최상위 디렉토리bin : binary, 실행파일, 실행할 수 있는 명령어temp: 임시파일. vim 편집하는 동안 만들어지는 임시파일을 저장home: 개별 사용자들..
1. unix의 특성 - 다중 프로세스 여러개의 프로세스를 실행시킬 수 있다. - 다중 프로세서 지원 두개 이상의 cpu를 가진 시스템 지원 - 높은 이식성과 확장성 이식성: 다양한 플랫폼에서 사용 가능. C언어로 작성되어 하드웨어가 달라져도 거의 그대로 사용이 가능하다. 어셈블리어로 개발되면 하드웨어에 따라 porting해야 함 확장성: 각 기능이 모듈로 나뉘어 있어 새로운 기능을 추가할 때 필요한 모듈만 추가하면 되므로 편리. - 다중 사용자 환경 여러 사용자가 동시에 작업하는 것을 허용 터미널/네트워크 연결을 통해 하나의 시스템에 접속 - 소유권과 접근 권한 설정이 중요 * 소유권 각 파일, 디렉토리가 어느 사용자 소유인지 나타냄 모든 파일과 디렉토리는 시스템에 등록된 사용자 중 한 사용자의 소유가..
- 배열 기반의 리스트에서 중간에 데이터 삽입/삭제할 때 시간복잡도 O(N) - 내장된 정렬 함수 사용 - 퀵소트 구현 시 피벗을 랜덤으로 잡기 - 힙소트, 머지소트 O(nlogn) - DP -> Memoization : 컴퓨터 프로그램이 동일한 계산을 반복해야 할 때, 이전에 계산한 값을 메모리에 저장함으로써 동일한 계산의 반복 수행을 제거하여 프로그램 실행 속도를 빠르게 하는 기술. (동적 계획법의 핵심) - DFS로 최단거리 구하기 xxx -> 불가능하거나, 시간초과 - BFS는 큐에 넣을 때 방문 체크를 해야 중복 방문이 일어나지 않음 - 큐의 크기는 적어도 방문할 수 있는 정점의 총 개수보다는 크게 지정
- package wha; 는 모두 지우고 제출 - 클래스 이름은 Main 이어야 함 - Scanner 는 하나만 - 포장클래스 객체 간 비교는 equals 메서드로 비교 - Scanner 는 느린 입력 -> BufferedReader 를 사용
cin, cout 을 사용하려면 int main(){ ios::base::sync_with_stdio(); cin.tie(NULL); cout.tie(NULL); return 0; } 저 세줄을 추가해줘야 속도가 빨라진다. - 답을 k로 나눈 나머지를 출력한다. : 답을 구하는 과정에서 k로 모듈러 연산을 해야 오버플로우를 막을 수 있다. - 지역변수 & 지역 배열은 초기화가 안되어 있음 - 전역 배열 = {1}; -> 첫 원소만 1, 나머지는 0 - float : 부정확 - double 사용 - char 배열에 10자의 문자열을 담으려면 배열의 크기는 11 이상 -> 배열 끝에 '\0' 널 문자를 담아야 함 - atoi 에 널 문자로 끝나는 문자열을 넘겨줘야 함 char 주소를 넘겨주면 안됨 - sca..
백준 10951 이 문제의 목적은 파일의 끝(EOF)을 올바르게 판단하는 법을 연습하는 것입니다. 총 몇 줄이 주어진다 등의 정보는 절대 입력으로 주지 않습니다. 또한 단순히 키보드로 입력 내용만 적고 프로그램이 종료되지 않은 상태까지만 봐서는 EOF를 제대로 처리했는지 알 수 없습니다. 더 이상 읽을 게 없을 때 프로그램을 종료하는 법을 알아야 합니다. 그 방법은 언어마다 다르고 사용하는 함수마다 다르니, 구글에 "C언어 EOF" 와 같이 검색해서 그 방법을 알아보세요. 주로 파일 입출력으로 설명되어 있겠지만, 입력 스트림도 파일 입력이기 때문에 결국 동일합니다. 자바의 경우 Scanner와 BufferedReader에서 해야 하는 처리가 서로 다릅니다. 언어를 불문하고, 레퍼런스를 참고해서 사용법을 ..
C++ 파일 관련 클래스 ifstream : input file stream ofstream : output file stream fstream : file stream cin, cout도 표준 입출력을 담당하는 객체 istream, ostream -> iostream 1. 출력스트림 #include #include using namespace std; int main(){ ofstream output; output.open("scores.txt"); output
- 데이터베이스에 데이터가 저장되는 단위는 테이블 1. 모든 칼럼 조회하기 - SELECT * FROM emp; 2. 참고 * DESC 테이블명; 테이블 구성을 보여줌 속성명, 기본키, 데이터 타입 * 해당 사용자가 만든 모든 테이블 조회하기 SELECT * FROM tab; - 오라클에 예약되어있는 tab 테이블 -> 해당 사용자가 만든 모든 테이블에 대한 정보를 가지고 있는 테이블 * 데이터 조회시 출력형식 조절하는 명령어 - 데이터가 숫자일 경우 COL empno FOR 9999 : empno라는 숫자를 다루는 칼럼의 경우 숫자 4자리(9999)까지 들어가게 설정 - 데이터가 문자인 경우 COL ename FOR a8 : ename이란 칼럼의 길이를 8바이트까지 들어가게 설정 - 한 화면에 출력 가..
1. 경로명 한글에서 영어로 변경 $ export LANG=C $ xdg-user-dirs-gtk-update > 다시 묻지 않기 체크, Update Names 클릭 2. vim 설치 및 우분투 패키지 업데이트&업그레이드 $ sudo apt-get install vim $ sudo apt-get update -y [자주 자주해서 업데이트 하기] $ sudo apt-get upgrade -y ( $ sudo apt-get dist-upgrade (가끔 전체 설치 패키지에 대한 업그레이드 수행)) 3. gcc 등의 개발 환경을 만들 경우 $ sudo apt-get install g++-4.7 c++4.7 $ sudo apt-get install build-essential $ sudo apt install ..
외장하드에 우분투 설치하기 1. 부팅용 USB 준비 - 다른 파일이 있으면 안됨 - 우분투 공식 사이트에서 iso 파일을 내려받고 튜토리얼에 iso 파일을 usb에 설치해서 부팅디스크로 만들어 주는 프로그램을 다운받아 usb에 설치 2. UEFI 바이오스 -> BIOS 화면에서 advanced 탭 > UEFI Boot : disabled Security 탭 > Secure Boot Configuration > Secure Boot Option : Disabled boot에서 우분투 부팅USB를 최상단으로 올려준다 3. Ctrl+Alt+T 를 눌러서 터미널을 열고 ' sudo gparted ' 를 입력하면 파티션을 설정하도록 나온다. - 먼저 우측 상단에 sda, sdb를 drop down으로 고를수 있는..