본문 바로가기

전체 글191

[프로그래머스 ] Level 1 – 가운데 글자 가져오기 문제 설명 단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다. 재한사항 · s는 길이가 1 이상, 100이하인 스트링입니다. 입출력 예 s return “abcde” “c” “qwer" “we” - 풀이 과정 - 1. 문자열 매개변수 s 길이에서 2로 나누어 중간 위치 값을 저장 (length 4 -> index = 2) 2. 문자열 매개변수 s 길이의 짝수 여부 확인을 위해 조건문(if) 사용 3. 2로 나눈 나머지 값이 0면 짝수이기에 1번 과정에서 구했던 index값(중간 위치)에 해당하는 문자의 위치와 index-1위치의 문자를 문자열로 더해서 리턴 4. 2로 나눈 나머지 값이 0이 아니면 홀수 이기에 1번 과정에서 .. 2021. 1. 27.
[프로그래머스] Level 1 – K번째수 문제 설명 배열 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 이상 1.. 2021. 1. 27.
[프로그래머스] Level 1 – 완주하지 못한 선수 문제 설명 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때, 완주하지 못한 선수의 이름을 return 하도록 solution 함수를 작성해주세요. 제한사항 · 마라톤 경기에 참여한 선수의 수는 1명 이상 100,000명 이하입니다. · completion의 길이는 participant의 길이보다 1 작습니다. · 참가자의 이름은 1개 이상 20개 이하의 알파벳 소문자로 이루어져 있습니다. · 참가자 중에는 동명이인이 있을 수 있습니다. 입출력 예 participant completion return [leo.. 2021. 1. 27.
[자바의 정석] Chapter 3 연산자(Operator) 연산자(operator)연산자는 ‘연산을 수행하는 기호’를 말하며 ‘+’기호는 덧셈 연산자라고 하며 덧셈 연산을 수행한다. 사칙 연산(+, -, *, /)을 비롯하여 다양한 연산자를 이용한다. 연산자와 피연산자o  피연산자(operand) : 연산을 수행하기 위한 연산의 대상으로 상수, 변수 식(式) 등을 사용할 수 있다.o  연산자는 피연산자로 연산을 수행하고 나면 항상 결과값을 반환한다. 연산자(operator) : 연산을 수행하는 기호 (+,-,*,/ 등)피연산자(operand) : 연산자의 작업 대상 (변수, 상수, 리터럴, 수식)  식(式)과 대입연산자o  식(式)이란 연산자와 피연산자를 조합하여 계산하고자 하는 것을 표현하는 것을 말한다. 식을 계산하여 얻는 것을 ‘식을 평가(evaluatio.. 2021. 1. 21.
[자바의 정석] Chapter 2 변수 변수(variable)란?o  변수란, 단 하나의 값을 저장할 수 있는 메모리 공간을 뜻한다.o  하나의 값만 저장할 수 있으므로 새로운 값을 저장 시 기존의 값은 사라진다.  변수의 선언과 초기화o  변수 타입 : 변수에 저장될 값이 어떤 타입인지 지정하는 것이다.o  변수 이름 : 변수에 붙이는 이름으로 사용할 메모리 공간이 이름을 붙여주는 것이다. 이 이름을 이용하여 값을 저장하기도 하고 값을 불러오기도 하기에 중복되어서는 안된다.o  변수를 선언 시 메모리 빈 공간에 변수 타입에 따라 알맞은 공간이 할당되며 변수 이름을 통해 사용한다.o  변수의 초기화란, 변수를 사용하기 전 처음으로 값을 저장하는 것이다.o  메모리는 여러 프로그램이 사용하는 공간이기에 변수를 선언한 이후 초기화를 해주어야 한다.. 2021. 1. 19.
[JAVA] 컴파일 언어 vs 인터프리터 언어 컴파일 언어 1. 작성된 소스 코드를 모두 컴파일하여 기계어로 변환 후 실행하는 방식이다. 2. 소스 코드를 기계어로 변환하는 빌드 과정에서 인터프리터 언어에 비해 시간이 소요되지만 모든 코드가 기계어로 변환되어 있기에 실행 시간이 빠르다. 3. 프로그램 전체를 보고 한 번에 컴파일(번역)하기에 속도는 빠르지만 중간에 에러가 있는 경우 프로그램 자체가 실행이 되지 않는다. 4. C, C++, C#, JAVA 등이 컴파일 언어에 속한다. 인터프리터 언어 1. 인터프리터기에 의해 번역하는 방식으로 소스 코드를 실시간으로 한 줄씩 읽어서 동시에 번역 및 실행하는 언어이다. 2. 소스코드를 한 문장씩 읽어서 실행하기에 중간에 에러가 있더라도 에러를 만나기 전까지는 프로그램이 동작하며 에러가 만났을 경우에 프로그.. 2021. 1. 18.
[자바의 정석] Chapter 1 자바를 시작하기 전 자바란?o  자바는 썬 마이크로 시스템즈(Sun Microsystemps)에서 개발하여 1996년 1월에 공식적으로 발표한 객체지향 프로그래밍 언어이다.o  자바의 가장 중요한 특징으로 운영체제에 독립적이다. 따라서 운영체제의 종류에 관계없이 실행이 가능하며 운영체제에 따라 프로그램을 전혀 변경하지 않고 실행이 가능하다.o  풍부한 클래스 라이브러리(Java API)를 통해 프로그래밍에 필요한 요소들을 기본적으로 제공한다.  자바의 역사o  자바의 역사는 1991년 썬의 엔지니어들에 의해서 고안된 오크(Oak)라는 언어에서 시작되었다. Oak는 처음에는 가전제품이나 PDA같은 소형기기에 사용될 목적 이였으나 여러 운영체제를 사용하는 컴퓨터의 인터넷 통신이 등장 후 운영체제에 독립적인 Oak가 적합하다고 .. 2021. 1. 18.
[JAVA] 객체 지향 언어의 특징 객체 지향 프로그래밍(OOP : Object-Oriented Programming) 특징 1. 상속성 정의된 상위(부모) 클래스의 속성을 모든 하위(자식) 클래스가 물려받는 것이다. 자바에서 부모 클래스를 SuperClass라고 하며 이를 상속받은 클래스를 SubClass라고 한다. 하위 클래스에서는 상위 클래스의 속성을 물려 받음으로써 해당 기능을 정의하지 않고도 바로 사용할 수 있다. 이로 인해 코드 중복 작성을 방지하고 코드 재사용을 가능하게 한다. 상속받은 클래스의 메소드를 재사용하는 것을 오버 라이딩(Overriding)이라고 한다. 상속을 하기 위해서는 extends 키워드를 사용한다. 2. 캡슐화 객체지향(자바)에서 캡슐화는 데이터 구조(메소드)와 데이터를 하나의 클래스라는 캡슐로 묶는 것이.. 2021. 1. 18.
[SourceTree] invalid username or password 에러 해결하기 소스트리를 사용하고 있던 중 어느순간 push 시도 시 remote :Invalid username or password 문구가 뜨면서 적용이 되지 않더라... 왠지 GitHub 패스워드를 변경 후 부터 되지 않은것 같다. 해결 방법을 검색해보니 계정 정보를 삭제 후 다시 시도하면 된다고한다. 급한데로 git bash(= SourceTree 터미널)명령어(git push)를 이용하면 소스트리 에러없이 원격저장소에 push가 가능하다. 필자 같은 경우는 원격 저장소를 origin으로 저장하였기에 아래처럼 명령어를 입력하여 push를 진행했다. 그러나 소스트리를 이용한 Push는 여전히 되지 않으며 해결 방법은 간단했다. 해결 방법1. C:\Users\user\AppData\Local\Atlassian\So.. 2021. 1. 11.