분류 전체보기
-
[네트워크] TCP/IP 4계층 모델의 계층구조 및 특징네트워크 2023. 10. 9. 23:19
- 애플리케이션 계층 애플리케이션 계층은 FTP, HTTP, SSH, SMTP, DNS 등 응용프로그램이 사용되는 프로토콜 계층이며 웹 서비스, 이메일 등 서비스를 제공 FTP : 장치와 장치 간의 파일을 전송하는데 사용되는 표준 통신 프로토콜 SSH : 보안되지 않은 네트워크에서 네트워크 서비스를 안전하게 운영하기 위한 암호화 네트워크 프로토콜 HTTP : World Wids Web을 위한 데이터 통신의 기초이자 웹 사이트를 이용하는 데 쓰는 프로토콜 SMTP : 전자 메일 전송을 위한 인터넷 표준 통신 프로토콜 DNS : 도메인 이름과 IP 주소를 매핑해주는 서버 - 전송 계층 전송 계층은 송신자와 수신자를 연결하는 통신 서비스를 제공하며 연결 지향 데이터 스트림 지원, 신뢰성, 흐름 제어를 제공하며..
-
[알고리즘] 프로그래머스 level2- 영어 끝말잇기(JAVA)알고리즘 2023. 10. 9. 22:33
설명 1부터 n까지 번호가 붙어있는 n명의 사람이 영어 끝말잇기를 하고 있습니다. 영어 끝말잇기는 다음과 같은 규칙으로 진행됩니다. 1. 1번부터 번호 순서대로 한 사람씩 차례대로 단어를 말합니다. 2. 마지막 사람이 단어를 말한 다음에는 다시 1번부터 시작합니다. 3. 앞사람이 말한 단어의 마지막 문자로 시작하는 단어를 말해야 합니다. 4. 이전에 등장했던 단어는 사용할 수 없습니다. 5. 한 글자인 단어는 인정되지 않습니다. 다음은 3명이 끝말잇기를 하는 상황을 나타냅니다. tank → kick → know → wheel → land → dream → mother → robot → tank 위 끝말잇기는 다음과 같이 진행됩니다. - 1번 사람이 자신의 첫 번째 차례에 tank를 말합니다. - 2번 사..
-
[알고리즘] 프로그래머스 level1 - 숫자 문자열과 영단어(JAVA)알고리즘 2023. 10. 7. 00:03
설명 네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드를 건네주면 프로도는 원래 숫자를 찾는 게임입니다. 다음은 숫자의 일부 자릿수를 영단어로 바꾸는 예시입니다. - 1478 → "one4seveneight" - 234567 → "23four5six7" - 10203 → "1zerotwozero3" 이렇게 숫자의 일부 자릿수가 영단어로 바뀌어졌거나, 혹은 바뀌지 않고 그대로인 문자열 s가 매개변수로 주어집니다. s가 의미하는 원래 숫자를 return 하도록 solution 함수를 완성해주세요. 참고로 각 숫자에 대응되는 영단어는 다음 표와 같습니다. 숫자 영단어 0 zero 1 one 2 two 3 three 4 four 5 five 6 six..
-
[알고리즘] 프로그래머스 level1 - 같은 숫자는 싫어(JAVA)알고리즘 2023. 10. 5. 23:31
설명 배열 arr가 주어집니다. 배열 arr의 각 원소는 숫자 0부터 9까지로 이루어져 있습니다. 이때, 배열 arr에서 연속적으로 나타나는 숫자는 하나만 남기고 전부 제거하려고 합니다. 단, 제거된 후 남은 수들을 반환할 때는 배열 arr의 원소들의 순서를 유지해야 합니다. 예를 들면, - arr = [1, 1, 3, 3, 0, 1, 1] 이면 [1, 3, 0, 1] 을 return 합니다. - arr = [4, 4, 4, 3, 3] 이면 [4, 3] 을 return 합니다. 배열 arr에서 연속적으로 나타나는 숫자는 제거하고 남은 수들을 return 하는 solution 함수를 완성해 주세요. 제한사항 - 배열 arr의 크기 : 1,000,000 이하의 자연수 - 배열 arr의 원소의 크기 : 0보다..
-
[알고리즘] 프로그래머스 level1 - 나머지가 1이 되는 수 찾기(JAVA)알고리즘 2023. 10. 5. 23:13
설명 자연수 n이 매개변수로 주어집니다. n을 x로 나눈 나머지가 1이 되도록 하는 가장 작은 자연수 x를 return 하도록 solution 함수를 완성해주세요. 답이 항상 존재함은 증명될 수 있습니다. 제한사항 - 3 ≤ n ≤ 1,000,000 입출력 예 n result 10 3 12 11 입출력 예 설명 입출력 예#1 - 10을 3으로 나눈 나머지가 1이고, 3보다 작은 자연수 중에서 문제의 조건을 만족하는 수가 없으므로, 3을 return 해야 합니다. 입출력 예#2 - 12를 11로 나눈 나머지가 1이고, 11보다 작은 자연수 중에서 문제의 조건을 만족하는 수가 없으므로, 11을 return 해야 합니다. 답안 class Solution { public int solution(int n) { ..
-
[알고리즘] 프로그래머스 level1 - K번째수(JAVA)알고리즘 2023. 10. 4. 21:30
설명 배열 array의 i번째 숫자부터 j번째 숫자까지 자르고 정렬했을 때, k번째에 있는 수를 구하려 합니다. 예를 들어 array가 [1, 5, 2, 6, 3, 7, 4], i = 2, j = 5, k = 3이라면 1. array의 2번째부터 5번째까지 자르면 [5, 2, 6, 3]입니다. 2. 1에서 나온 배열을 정렬하면 [2, 3, 5, 6]입니다. 3. 2에서 나온 배열의 3번째 숫자는 5입니다. 배열 array, [i, j, k]를 원소로 가진 2차원 배열 commands가 매개변수로 주어질 때, commands의 모든 원소에 대해 앞서 설명한 연산을 적용했을 때 나온 결과를 배열에 담아 return 하도록 solution 함수를 작성해주세요. 제한 사항 - array의 길이는 1 이상 100..
-
[알고리즘] 프로그래머스 level1 - 문자열 내 마음대로 정렬하기(JAVA)알고리즘 2023. 10. 4. 20:47
설명 문자열로 구성된 리스트 strings와, 정수 n이 주어졌을 때, 각 문자열의 인덱스 n번째 글자를 기준으로 오름차순 정렬하려 합니다. 예를 들어 strings가 ["sun", "bed", "car"]이고 n이 1이면 각 단어의 인덱스 1의 문자 "u", "e", "a"로 strings를 정렬합니다. 제한 조건 - strings는 길이 1 이상, 50이하인 배열입니다. - strings의 원소는 소문자 알파벳으로 이루어져 있습니다. - strings의 원소는 길이 1 이상, 100이하인 문자열입니다. - 모든 strings의 원소의 길이는 n보다 큽니다. - 인덱스 1의 문자가 같은 문자열이 여럿 일 경우, 사전순으로 앞선 문자열이 앞쪽에 위치합니다. 입출력 예 strings n return ["s..
-
[알고리즘] 프로그래머스 level1 - 최대공약수와 최소공배수(JAVA)알고리즘 2023. 10. 3. 21:11
설명 두 수를 입력받아 두 수의 최대공약수와 최소공배수를 반환하는 함수, solution을 완성해 보세요. 배열의 맨 앞에 최대공약수, 그다음 최소공배수를 넣어 반환하면 됩니다. 예를 들어 두 수 3, 12의 최대공약수는 3, 최소공배수는 12이므로 solution(3, 12)는 [3, 12]를 반환해야 합니다. 제한 사항 - 두 수는 1이상 1000000이하의 자연수입니다 입출력 예 n m return 3 12 [3,12] 2 5 [1,10] 입출력 예 설명 입출력 예#1 위의 설명과 같습니다. 입출력 예#2 자연수 2와 6의 최대공약수는 1, 최소공배수는 10이므로 [1,10]을 리턴해야합니다. 답안 class Solution { public int[] solution(int n, int m) { r..