분류 전체보기
-
3. 최솟값 만들기Coding Test/프로그래머스 Lv.0 2023. 10. 11. 16:37
https://school.programmers.co.kr/learn/courses/30/lessons/12941 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 길이가 같은 배열 A, B 두개가 있습니다. 각 배열은 자연수로 이루어져 있습니다. 배열 A, B에서 각각 한 개의 숫자를 뽑아 두 수를 곱합니다. 이러한 과정을 배열의 길이만큼 반복하며, 두 수를 곱한 값을 누적하여 더합니다. 이때 최종적으로 누적된 값이 최소가 되도록 만드는 것이 목표입니다. (단, 각 배열에서 k번째 숫자를 뽑았다면 다음에 k번째 숫자는 다시 뽑을 수 없습니다.) 예를 들어 ..
-
2. JadenCase 문자열 만들기Coding Test/프로그래머스 Lv.0 2023. 10. 11. 15:53
https://school.programmers.co.kr/learn/courses/30/lessons/12951 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr JadenCase란 모든 단어의 첫 문자가 대문자이고, 그 외의 알파벳은 소문자인 문자열입니다. 단, 첫 문자가 알파벳이 아닐 때에는 이어지는 알파벳은 소문자로 쓰면 됩니다. (첫 번째 입출력 예 참고) 문자열 s가 주어졌을 때, s를 JadenCase로 바꾼 문자열을 리턴하는 함수, solution을 완성해주세요. function solution(s) { return s .toLowerCase(..
-
1. 최댓값과 최솟값Coding Test/프로그래머스 Lv.0 2023. 10. 11. 15:35
https://school.programmers.co.kr/learn/courses/30/lessons/12939 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문자열 s에는 공백으로 구분된 숫자들이 저장되어 있습니다. str에 나타나는 숫자 중 최소값과 최대값을 찾아 이를 "(최소값) (최대값)"형태의 문자열을 반환하는 함수, solution을 완성하세요. 예를들어 s가 "1 2 3 4"라면 "1 4"를 리턴하고, "-1 -2 -3 -4"라면 "-4 -1"을 리턴하면 됩니다. function solution(s) { s = s.split(" ") let..
-
2023 - 08 - 31 기술면접(12) - 객체지향 프로그래밍 (OOP)Today I Learned/TIL 08 2023. 8. 31. 11:26
객체지향 프로그래밍 언어란? 객체 지향 프로그래밍은 컴퓨터 프로그래밍 패러다임 중 하나로, 프로그래밍에서 필요한 데이터를 추상화시켜 상태와 행위를 가진 객체를 만들고 그 객체들 간의 유기적인 상호작용을 통해 로직을 구성하는 프로그래밍 방법이다. 객체지향 프로그래밍 언어의 장점 1.코드 재사용이 용이 : 남이 만든 클래스를 가져와서 이용할 수 있고 상속을 통해 확장해서 사용할 수 있다. 2. 유지보수가 쉬움 : 객체 지향 프로그래밍에서는 수정해야 할 부분이 클래스 내부에 멤버 변수혹은 메서드로 존재하기 때문에 해당 부분만 수정하면 된다. 3. 대형 프로젝트에 적합 : 클래스 단위로 모듈화시켜서 개발할 수 있으므로 대형 프로젝트처럼 여러 명, 여러 회사에서 프로젝트를 개발할 때 업무 분담하기 쉽다. 객체지향..
-
2023 - 08 - 30 기술면접(11)- DI, IoCToday I Learned/TIL 08 2023. 8. 31. 11:14
DI (Dependency Injection - 의존성 주입): DI는 프로그램에서 여러 컴포넌트가 서로 협력하고 의존하는 상황에서 사용되는 디자인 패턴입니다. 우리 일상 생활에서도 의존성을 가지고 있는 예를 생각해보면 쉽게 이해할 수 있어요. 예를 들어, 자전거를 타려면 바퀴나 핸들 같은 부품들이 필요한데, 이런 부품들은 자전거에 주입되어야 합니다. 프로그래밍에서도 비슷한 원리가 적용됩니다. DI는 컴포넌트들 간의 의존성을 줄이기 위해, 컴포넌트에 필요한 다른 컴포넌트를 외부에서 주입하는 방식을 말합니다. 이렇게 하면 컴포넌트들이 더 모듈화되고 유연해지며, 유지보수가 더 편리해집니다. IoC (Inversion of Control - 제어의 역전): IoC는 프로그래밍에서 컨트롤의 흐름이 바뀌는 것을 ..
-
2023 - 08 - 29 기술면접(10)- HTTP와 HTTPS의 차이점Today I Learned/TIL 08 2023. 8. 29. 22:55
HTTP(Hypertext Transfer Protocol)는 클라이언트와 서버 간 통신을 위한 통신 규칙 세트 또는 프로토콜입니다. 사용자가 웹 사이트를 방문하면 사용자 브라우저가 웹 서버에 HTTP 요청을 전송하고 웹 서버는 HTTP 응답으로 응답합니다. 웹 서버와 사용자 브라우저는 데이터를 일반 텍스트로 교환합니다. 간단히 말해 HTTP 프로토콜은 네트워크 통신을 작동하게 하는 기본 기술입니다. 이름에서 알 수 있듯이 HTTPS(Hypertext Transfer Protocol Secure)는 HTTP의 확장 버전 또는 더 안전한 버전입니다. HTTPS에서는 브라우저와 서버가 데이터를 전송하기 전에 안전하고 암호화된 연결을 설정합니다. HTTP 프로토콜의 작동 원리 HTTP는 OSI(Open Sys..
-
2023 - 08 - 28 Validation failed (numeric string is expected)Today I Learned/TIL 08 2023. 8. 29. 12:07
uri오류로 인해 발생한 에러. user/:무슨 아이디 user/recommendation 으로 통신하면 아이디를 recommendation 으로 받아들여서 아예 다르게 쓰려면, user/recommendation/다른변수 이렇게 구분되게 만들어줘야 한다. ex) localhost:3000/user/ 이 자리에는 userId를 기대하는데 localhost:3000/user/recommendation 이라고 치면 recommendation을 userId로 인식한다. userId는 숫자여야 하는데 문자열이 들어오니 당연히 에러.
-
2023 - 08 - 27 기술면접(09) - TCP와 UDP의 특징과 차이점Today I Learned/TIL 08 2023. 8. 28. 09:49
TCP (Transmission Control Protocol): 연결 지향적인 프로토콜입니다. 데이터를 전송하기 전에 먼저 연결을 설정하고, 데이터를 전송한 후에 연결을 해제합니다. 데이터의 신뢰성과 정확성이 중요한 경우에 사용됩니다. 예를 들어 파일 전송, 이메일 전송 등에서 주로 사용됩니다. 데이터 전송 과정에서 오류 검출과 복구를 수행하며, 순서가 보장되어야 하는 경우 패킷의 순서를 정확하게 조작합니다. 신뢰성을 위해 데이터를 보낼 때 ACK(확인 응답)과 각 패킷의 순서 번호 등을 사용합니다. 오버헤드가 발생하고, 전송 속도가 상대적으로 느릴 수 있습니다. UDP (User Datagram Protocol): 비연결성 프로토콜로, 데이터를 전송하기 전에 연결을 설정하지 않고, 연결을 해제하지 않..