전체 글 33

14891 톱니바퀴

14891 톱니바퀴문제 : https://www.acmicpc.net/problem/14891 [출처 : 백준 홈페이지]풀이 : 톱니바퀴는 depue를 이용했습니다.시계 방향 - 맨 뒤 값을 빼서 맨 앞에 push반시계 방향 - 맨 앞 값을 빼서 맨 뒤에 push처음 이동하는 톱니를 queue 넣고 왼쪽, 오른쪽 톱니를 확인해주면서 맞닿은 극이 다를 경우 queue에 넣어줍니다. xxxxxxxxxx#include#include#include#includeusing namespace std;​typedef struct top { int no; int dir;public: top() {} top(int no, int dir) : no(no), dir(dir) {}};​​deque dq[4];queue q;b..

공부/알고리즘 2018.01.11

swap

SWAP이번주 월요일 회사 면접을 다녀왔다...기술 면접 때 어떤 TYPE에 대한 SWAP을 구현하라는 문제가 있었는데 너무 긴장한 나머지... 별 이상한 말도 안되는 코드를 작성한 것 같다... 이렇게 쉬운 문제도 실수를 하다니 어이가 없어서 다시 정리해 본다. x#include//int로 구현​void swap(int *a, int *b) // 주소 값을 바꿔{ //call by Address //자기가 저장하고 있는 주소번지의 해당 메모리 번지로 찾아가서 그 위치의 변수의 값을 바꿔준다. int *tmp; // int tmp; tmp = a; // tmp = *a; a = b; // *a = *b; b = tmp; // *b = tmp;}​void swap2(int a, int b) //Call B..

공부/개발 2018.01.10

상속

상속(Inheritance)상속에 대해 알아보고자 다음과 같은 class를 작성하였다.일단 !! 모든 클래스는 하나의 클래스를 무조건~ 상속하고 있다. 바로 Object Class이다. (toString이나 equals와 같은 메서드를 따로 정의하지 않고도 사용할 수 있었던 이유)먼저 상속이란 무엇일까? 상속은 쉬운 의미로 재사용이다. 기존의 클래스를 재사용해 새로운 클래스를 작성하는 것이다.단지 재사용한다고 해서 장점이 뭐지??상속을 사용하게 되면 먼저, 보다 적은 양의 코드로 새로운 클래스를 작성할 수 있다.코드를 공통적으로 관리할 수 있기 때문에 코드의 추가 및 변경이 매우!! 용이하다. xpublic class GrandFa //상속 관계를 보기 위해 할아버지 클래스를 만들었다.{ private ..

공부/개발 2017.12.27

헷갈리는 String

String xxxxxxxxxxString a = "kor"; //literal을 사용해서 선언 - 힙영역 안의 string pool이라는 영역에 자리 잡는다.String b = new String():b = "kor";String c = new String("kor"); //heap 영역에 저장System.out.println(a == b); //true - literal끼리의 비교System.out.println(a == c); //false - literal과 객체의 비교System.out.println(b == c); //false - literal과 객체의 비교​String str1 = "String";String str2 = "String";System.out.println(str1 == st..

공부/개발 2017.12.26

List, Map, Set의 차이점

List, Map, Set의 차이점List순서가 있는 데이터의 집합, 데이터의 중복을 허용, index 저장 및 사용하여 사용 특정 위치에 요소를 삽입, 접근순차검색LinkedList자료의 주소값으로 서로 연결되어 있는 구조stack이나 queue와 같은 자료구조로 사용할 수 있다.Vector동시접속 - 자동 동기화ArrayList와 기능은 동일ArrayListnull element도 허용vector보다 가벼움메모리 상의 주소를 정확하게 참조해서 가져온다자료의 최대 갯수에 영향을 받는다 Capacity - 수용할 수 있는 데이터의 수, size - 저장된 데이터의 수SET순서를 유지하지 않는 데이터의 집합, 데이터의 중복을 허용하지 않는다.HashSethashcode에 의해서 중복여부 확인가장 빠른 접근..

공부/개발 2017.08.21

리눅스3주차(fdisk) -1

fdiskautomount 명령어를 살펴보기 전 파티션 설정을 위해 필요한 명령어기능 : 디스크의 파티션 생성, 삭제, 보기 등 파티션을 관리한다.옵션 : -b (크기) : 섹터 크기를 지정할 때 쓰는 명령어 -l : 파티션 테이블을 출력할 때 씀 list의 l인가 ??내부명령어로는 xxxxxxxxxxa : 부팅 파티션 설정b : BSD 디스크 라벨을 편집 그래서 b인듯c : 도스 호환성을 설정 // 호환성 : compatibilityd : 파티션을 삭제 // deletel : 사용 가능한 파티션 종류를 출력한다. //listm : 도움말을 출력한다. // n : 새로운 파티션을 추가한다. // newo : 새로운 빈 DOS 파티션을 생성한다 //P : 파티션 테이블을 출력한다 // printq : 작업..

공부/인프라 2017.07.12

리눅스 2주차-2

리눅스 2주차 - 2(DHCP, vsftpd).md 리눅스 2주차 - 2(DHCP, vsftpd)DHCP클라이언트나 다른 TCP/IP 기반 장비에 IP 주소를 제공하는 서비스 IP 주소와 함께 GateWay, Dns 주소 등 네트워크 자원에 연결할 수 있는 정보 제공 DHCP 서버는 클라이언트에서 특정 기간 IP를 임대하여 갱신 요청시 IP 주소 갱신한다. PORT 번호Server (UDP)67Client (UDP)68DHCP 동작 과정 Discover : client가 server 탐색, 주소 요청Offer : server가 client에 응답, 할당 주소 제공Request : client가 serverAck : server가 client에 주소 사용 승인DHCP 서버 구성하기1. 패키지 설치yum -..

공부/인프라 2017.06.27