본문 바로가기
반응형

개발36

[Algorithm] 재귀함수 ✔️재귀함수란? 재귀 함수(Recursive Function)는 컴퓨터 과학 및 프로그래밍에서 중요한 개념 중 하나로, 함수가 자기 자신을 호출하는 것을 의미합니다. 이것은 어떤 문제를 해결하기 위해 주어진 작업을 반복적으로 수행하거나, 복잡한 문제를 간단한 단계로 분해하여 해결하는 데 사용됩니다. 이 글에서는 재귀 함수의 개념, 작동 방식, 예제 및 주의할 점을 자세히 설명하겠습니다. 💡 동작 방식 재귀 함수는 자신을 호출합니다. 호출될 때마다 함수는 주어진 입력에 대한 작업을 수행하고, 작업이 완료되면 자기 자신을 호출하여 똑같은 작업을 반복합니다. 재귀 함수는 종료 조건을 가지고 있어야 합니다. 종료 조건이 충족되면 재귀 호출이 멈추고 함수가 종료됩니다. 이렇게 하지 않으면 무한한 재귀 호출이 발생.. 2023. 9. 14.
[프로그래머스 Lv.2] 타겟 넘버 문제 n개의 음이 아닌 정수들이 있습니다. 이 정수들을 순서를 바꾸지 않고 적절히 더하거나 빼서 타겟 넘버를 만들려고 합니다. 예를 들어 [1, 1, 1, 1, 1]로 숫자 3을 만들려면 다음 다섯 방법을 쓸 수 있습니다. -1+1+1+1+1 = 3 +1-1+1+1+1 = 3 +1+1-1+1+1 = 3 +1+1+1-1+1 = 3 +1+1+1+1-1 = 3 사용할 수 있는 숫자가 담긴 배열 numbers, 타겟 넘버 target이 매개변수로 주어질 때 숫자를 적절히 더하고 빼서 타겟 넘버를 만드는 방법의 수를 return 하도록 solution 함수를 작성해주세요. 제한사항 주어지는 숫자의 개수는 2개 이상 20개 이하입니다. 각 숫자는 1 이상 50 이하인 자연수입니다. 타겟 넘버는 1 이상 1000 이.. 2023. 9. 13.
[CS] MSA(Micro Service Architecture) ✔️MSA란? MSA는 소프트웨어 시스템을 작은 독립적인 서비스로 나누고, 각 서비스가 서로 협력하여 전체 애플리케이션을 구성하는 아키텍처 패턴입니다. MSA는 모놀리식(monolithic) 아키텍처와 대조되며, 애플리케이션을 하나의 대규모 모놀리식 애플리케이션 대신 작고 독립적인 서비스로 분해합니다. 💡MSA 특징 독립적인 서비스: 각 마이크로서비스는 특정한 비즈니스 기능을 수행하며, 서로 독립적으로 배포 및 확장 가능합니다. 효율적인 개발 및 배포: 각 마이크로서비스는 작고 간단하기 때문에 더 빠르게 개발하고 배포할 수 있습니다. 이로 인해 개발자 팀 간 협업이 쉬워집니다. 기술 다양성: 각 서비스는 자체 기술 스택을 선택할 수 있으므로 최신 기술을 도입하거나 레거시 시스템을 통합할 수 있습니다. 확.. 2023. 9. 11.
[프로그래머스 Lv.1] 신규 아이디 추천 문제 카카오에 입사한 신입 개발자 네오는 "카카오계정개발팀"에 배치되어, 카카오 서비스에 가입하는 유저들의 아이디를 생성하는 업무를 담당하게 되었습니다. "네오"에게 주어진 첫 업무는 새로 가입하는 유저들이 카카오 아이디 규칙에 맞지 않는 아이디를 입력했을 때, 입력된 아이디와 유사하면서 규칙에 맞는 아이디를 추천해주는 프로그램을 개발하는 것입니다. 다음은 카카오 아이디의 규칙입니다. 아이디의 길이는 3자 이상 15자 이하여야 합니다. 아이디는 알파벳 소문자, 숫자, 빼기(-), 밑줄(_), 마침표(.) 문자만 사용할 수 있습니다. 단, 마침표(.)는 처음과 끝에 사용할 수 없으며 또한 연속으로 사용할 수 없습니다. "네오"는 다음과 같이 7단계의 순차적인 처리 과정을 통해 신규 유저가 입력한 아이디가 .. 2023. 9. 9.
반응형