전체 글

배열(Array) 변수는 하나의 데이터만 저장할 수 있습니다. 그러나, 저장해야 할 데이터가 많아지면 그만큼 변수를 사용해야 합니다. 이를 해결하기 위해서 배열을 사용하면 많은 데이터를 손쉽게 처리할 수 있습니다. 배열(Array)은 메모리 상에 원소를 연속하게 배치한 자료구조입니다. 그리고 배열은 같은 탑의 변수를 담을 수 있는 고정 크기의 데이터 구조로, 메모리에 연속적으로 저장됩니다. 배열을 구성하는 각각의 값들을 배열 요소(element)라고 하며, 각 값이 저장되어 있는 위치를 인덱스(index)라고 합니다. 배열은 선언과 동시에 저장할 수 있는 타입이 결정되며, 만약에 다른 타입의 값을 저장하려고 하면 타입이 불일치하다는 컴파일 에러가 발생하게 됩니다. 그리고 배열을 한 번 생성하면 길이를 늘..
복잡도는 알고리즘의 성능을 나타내는 지표로 시간 복잡도와 공간 복잡도로 나눌 수 있습니다. 즉, 시간 복잡도는 특정한 크기의 입력에 대하여 알고리즘이 얼마나 오래 걸리는지를 의미하고, 공간 복잡도는 특정한 크기의 입력에 대하여 알고리즘이 얼마나 많은 메모리를 차지하는지를 의미합니다. 동일한 기능을 수행하는 알고리즘이 있다면 일반적으로 복잡도가 낮을수록 좋은 알고리즘입니다. 복잡도를 측정함으로써 다음의 2가지를 계산할 수 있습니다. 시간 복잡도 : 알고리즘을 위해 필요한 연산의 횟수 공간 복잡도 : 알고리즘을 위해 필요한 메모리의 양 알고리즘이란, 어떤 목적을 해결하기 위한 일련의 과정을 의미합니다. 문제를 해결하는 알고리즘은 다양하며 여러 가지 상황에 따라 시간 복잡도가 가장 낮은 알고리즘을 선택해서 사..
· Backend CS
함수(Function)와 메서드(Method) 두 단어의 차이에 대해 정리한 글입니다. 우선, 함수와 메서드는 프로그래밍에서 기능 단위의 코드 블록입니다. 그러나, 일반적으로 함수와 메서드는 객체지향 프로그래밍과 절차지향 프로그래밍에 따라 약간의 차이가 있습니다. 함수(Function)란? 함수는 하나의 특별한 목적의 작업을 수행하기 위해 독립적으로 설계된 코드의 집합입니다. 함수는 절차지향 프로그래밍에서 사용되며, 데이터를 입력받아 처리하고 결과를 반환합니다. 함수는 프로그램의 구조화와 코드 재사용을 위해 사용되기 때문에 여러 곳에서 호출되어 사용이 가능합니다. 하나의 기능이 하나의 함수로 구현되어 있기 때문에 디버깅 작업이 편리해집니다. 메서드(Method)란? 메서드는 객체지향 프로그래밍에서 사용되..
Spring Security란? Spring Security는 Spring 기반 애플리케이션의 인증, 인가 및 보안을 담당하는 스프링 하위 프레임워크입니다. Spring Security는 인증(Authentication)과 권한(Authorization)에 대한 부분을 Filter 기반으로 동작하고 Spring MVC와 분리되어 관리 및 동작하며, 데이터 보호 기능을 포함하여 웹 개발 과정에서 필수적인 사용자 관리 기능을 구현하는데 도움을 줍니다. Spring Security 3.2부터는 XML을 설정하지 않고 Java Bean 설정으로 간단하게 설정할 수 있도록 지원해줍니다. Spring Security를 사용하는 이유 Spring Security를 사용하는 이유는 Spring의 생태계에서 보안에 필요..
🔥개인 취미 목적으로 프로그래머스 문제를 정리한 게시글입니다. https://school.programmers.co.kr/learn/courses/30/lessons/86051 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr ✏️ 문제설명 프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다. 전화번호가 문자열 phone_number로 주어졌을 대, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *로 가린 문자열을 리턴하는 함수, solution을 완성해 주세요. 💡 제한사항 phone_number는 길이 4 ..
🔥개인 취미 목적으로 프로그래머스 문제를 정리한 게시글입니다. https://school.programmers.co.kr/learn/courses/30/lessons/86051 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr ✏️ 문제설명 0부터 9까지의 숫자 중 일부가 들어있는 배열 numbers가 매개변수로 주어집니다. numbers에서 찾을 수 없는 0부터 9까지의 숫자는 모두 찾아 더한 수를 return 하도록 solution 함수를 완성해 주세요. 💡 제한사항 1
· Backend CS
가장 기본인 참조형 객체 String에 대해 알아보려고 합니다. String 객체를 생성하는 데 방법은 두 가지가 있습니다. 첫 번째로 리터럴 방식("")으로 생성하는 것과 두 번째로 new 키워드로 생성하는 방법이 있습니다. 우선, 간단하게 String 객체를 저장하는 메모리 영역을 그림으로 보여드리겠습니다. 위 그림은 Java의 힙 메모리 영역입니다. 여기서 new 키워드로 String 객체를 생성하게 되면 Heap 영역에 메모리가 생성되고, 리터럴 방식으로 사용하게 된다면 Heap 영역의 내부에 있는 String constant pool 영역에 생성됩니다. String은 불변성을 지니고 있어 한번 저장된 값은 변하지 않습니다. 그러면 자바는 내부적으로 String 객체를 업데이트할 때 기존에 있는 ..
Error Message error : illegal start of type 번역 : 잘못된 유형 시작 Cause class Solution { public String solution(String[] seoul) { int i = 0; for (String s : seoul) { if (s.equals("Kim")) { break; } i++; } } return "김서방은 " + i + "에 있다"; } Illegal start of type 오류는 일반적으로 Java에서 발생하는 컴파일 타임 에러입니다. 다음과 같은 상황에서 발생합니다. 잘못된 선언 : 변수 또는 메서드의 선언이 잘못되었을 때 발생합니다. 스코프 문제 : 클래스, 메서드, 블록 내의 선언이 올바르게 이루어지지 않았을 때 발생합니다..
🔥개인 취미 목적으로 프로그래머스 문제를 정리한 게시글입니다. https://school.programmers.co.kr/learn/courses/30/lessons/12919 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr ✏️ 문제설명 String 배열 seoul의 element 중 "Kim"의 위치 x를 찾아, "김서방은 x에 있다"는 String을 반환하는 함수, solution을 완성하세요. seoul에 "Kim"은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는 없습니다. 💡 제한사항 seoul은 길이 1 이상 1,000 이하인 배열입니다. ..
✏️[모던 자바 인 액션, 전문가를 위한 자바 8, 9, 10 기법 가이드] 스터디 관련 책 내용을 정리한 글입니다. 📌 이 장의 내용 형식 검사, 형식 추론, 제약 메서드 참조 람다, 메서드 참조 활용하기 람다 표현식을 조합할 수 있는 유용한 메서드 비슷한 수학적 개념 3.5 형식 검사, 형식 추론, 제약 람다 표현식 자체에는 람다가 어떤 함수형 인터페이스를 구현하는지의 정보가 포함되어 있지 않습니다. 따라서 람다 표현식을 제대로 이해하려면 람다의 실제 형식을 파악해야 합니다. 3.5.1 형식 검사 람다가 사용되는 컨텍스트를 이용해서 람다의 형식을 추론할 수 있습니다. 어떤 컨텍스트에서 기대되는 람다 표현식의 형식을 대상 형식이라고 부릅니다. 람다 표현식을 사용할 때 실제 어떤 일이 일어나는지 보여주는..
규니95
Gyunny