본문 바로가기

분류 전체보기

(198)
면접질문: OSI 7계층 vs TCP/IP 4계층 프로토콜이 필요한 이유- 데이터가 전달되기 위해서 표준화된 약속, 절차가 필요합니다.- 전송측에서는 데이터를 안전하고, 정확하고, 신속하게 규격화(포장)하는 방법이 필요합니다.- 수신측에서는 그 데이터를 해석하는 방법이 필요합니다.  계층구조를 나눈 이유- 네트워크상 여러 대의 컴퓨터가 데이터를 주고 받기 위해 표준화된 인터페이스가 필요합니다.- 분할정복이 가능합니다. 어떠한 복잡한 문제를 만나더라도 계층 구조로 나누어 진단하면 쉽게 해결할 수 있습니다. OSI 7계층이란?- 1984년 국제표준기구(ISO)에서 개발한 모델입니다.- 통신 과정을 7단계로 나눴습니다. (a) 물리계층, (b)데이터링크, (c)네트워크, (d)전송, (e)세션, (f)표현, (g)응용  (a) 물리계층  - 데이터링크에서 전..
04/30 15일차 객체지향언어I : 변수와 메서드 클래스변수와 인스턴스변수- 인스턴스 변수는 인스턴스가 생성될 때 마다 생성되므로 인스턴스마다 각기 다른 값을 유지합니다.- 클래스 변수는 모든 인스턴스가 하나의 공간을 공유하므로 항상 공통된 값을 갖는다. class Card{ static int width = 250; // 카드의 폭 static int height = 100; // 카드의 넓이 String kind; // 카드 모양 int num; // 카드 번호}  인스턴스 메서드- 인스턴스 생성 후 '참조변수.메서드이름()' 으로 호출합니다.- 메서드내에 인스턴스 변수 사용 가능합니다. 클래스메서드- 객체 생성없이 '클래스이름.메서드이름()'으로 호출합니다.- 메서드내에서 인스턴스 변수 사용 불가합니다.- 메서드내에서 인스턴..
다이나믹 프로그래밍_11054 : 가장 긴 바이토닉 부분 수열 JAVA 문제수열 S가 어떤 수 Sk를 기준으로 S1    > Sk+1 > ... SN-1 > SN을 만족한다면, 그 수열을 바이토닉 수열이라고 한다.예를 들어, {10, 20, 30, 25, 20}과 {10, 20, 30, 40}, {50, 40, 25, 10} 은 바이토닉 수열이지만,  {1, 2, 3, 2, 1, 2, 3, 2, 1}과 {10, 20, 30, 40, 20, 30} 은 바이토닉 수열이 아니다.수열 A가 주어졌을 때, 그 수열의 부분 수열 중 바이토닉 수열이면서 가장 긴 수열의 길이를 구하는 프로그램을 작성하시오.입력첫째 줄에 수열 A의 크기 N이 주어지고, 둘째 줄에는 수열 A를 이루고 있는 Ai가 주어진다. (1 ≤ N ≤ 1,000, 1 ≤ Ai ≤ 1,000)출력첫째 줄에 수열 A의 부분..
컬렉션 프레임웍 Collection Framework : HashSet HashSet이란- Set 인터페이스를 구현한 가장 대표적인 컬렉션- Set 인터페이스의 특징대로 HashSet은 중복된 요소를 저장하지 않는다.- 컬렉션 내의 중복 요소들을 쉽게 제거할 수 있다.- 저장순서를 유지하고자 한다면 LinkedHashSet을 사용해야한다. Object[] objArr = {"1",new Integer(1),"2","2","3","3","4","4","4"};Set set = new HashSet();for(int i=0; i-  '1'이 두 번 출력되었는데, 하나는 String 인스턴스이고 다른 하나는 Integer 인스턴스로 서로 다른 객체이므로 중복으로 간주하지 않는다. class HashSetEx{ public static void main(String[] args){..
04/29 14일차 배열 배열과 변수의 차이- 배열은 스타트 주소값만 찾으면 연달아 데이터가 있다.- 변수는 메모리상에 따로 따로 있다. 배열이란- 같은 타입의 여러 변수를 하나의 묶음으로 다루는 것- 배열의 각 요소는 서로 연속적이다- 많은 양의 데이터를 다룰 때 유용하다. 배열의 선언과 생성- 타입뒤에 대괄호 []를 붙여서 배열을 선언한다.- 배열은 선언해도 저장할 공간이 생기는 것이 아니라 배열을 다루는데 필요한 변수가 생성된다.int[] arr; // 배열 선언arr = new int[5]; // 배열 생성 배열의 초기화- 생성된 배열에 처음으로 값을 저장하는 것int[] arr1 = new int[3]// int[] arr1 = new int[]{0,0,0}을 생략한 것, 초기값을 생략함int[] arr2 = {10,2..
면접질문: TCP와 UDP의 차이에 대해 설명해주세요. TCP/IP란- 패킷 통신 방식의 인터넷 프로토콜인 IP와 전송 조절 프로토콜인 TCP로 이루어져 있다.- IP Routing을 이용하여 이용해 목적지에 도달하며, TCP의 특성을 이용하여 송신자와 수신자의 논리적 연결을 생성하고 신뢰성을 유지한다. TCP(Transmission Control Protocol)- 연결 지향적 프로토콜입니다. (클라이언트와 서버가 연결된 상태에서 데이터를 주고 받습니다)- 프로그램간의 데이터 덩어리(세그먼트)를 안정적으로, 순서대로, 에러없이 교환할 수 있습니다. TCP 특징- 연결형 서비스로 가상 회선 방식을 제공합니다. 3-way handshaking 과정을 통해 연결을 설정하고, 4-way handshaking 과정을 통해 연결을 해제합니다.- 흐름제어입니다.송신자,..
04/25 12일차 객체가 뭐야? or Java가 무슨 언어에요?- Java는 (a)객체지향언어 입니다.(a) 객체지향언어 - 미리 사용할 목적으로 설계도(클래스)를 만들고 그 객체를 이용하여 프로그래밍하는 언어입니다 - 객체는 소프트웨어 세계에 구현할 대상이며, 속성과 기능을 가진 프로그램 단위를 말합니다.- 클래스는 객체에 속성과 기능을 넣어줄 설계도를 뜻합니다.- 인스턴스는 클래스에 따라 메모리상에 구현된 실체를 뜻합니다  연산자 퀴즈-간과한 점이 단항연산자도 이항연산자처럼 연산처리시 int형으로 처리되는지 알았다. 단항연산자는 선언한대로 나오는 것이였다..int x = 2;int y = 5;char c = 'A'; System.out.println(y+=10-x++); //13System.out.println(x+..
면접질문: Context-Switching에 대해 설명해주세요. 컴퓨터가 매번 하나의 프로세스만 처리할 수 있다면?- 해당 Task가 끝날때까지 다음 Task는 기다릴 수 밖에 없습니다.- 반응속도가 매우 느리고 사용하기 불편합니다. Context-Switching이란?- 여러개의 프로세스가 실행되고 있을 때 기존에 실행했던 프로세스를 중단하고 다른 프로세스를 실행시키는 기술입니다.- CPU에 실행할 프로세스를 교체하는 기술입니다. PCB- PCB(Process Context Block)이라고 하는 메모리의 별도 공간에 프로세스 상태값들을 저장하고 찾는다.- 프로세스가 실행 중인 상태를 스냅샷을 찍어 저장한다고 생각하면 좋습니다. PCB 구성요소- 프로세스 ID- 레지스터값((1)PC,(2)SP) (1) PC (Process Counter..