본문 바로가기

전체 글111

[kotlin] 람다표현식 람다표현식 1. 익명함수이다( 함수에 이름이 없다) 2. 변수처럼 사용돼서 함수의 argument, return 이 될 수 있다. - 함수의 들어가는 argument가 변수가 아니고 함수가 들어갈 수 있다 - return 값이 변수가 아닌 함수가 나올 수 있다. 우선 Parameter와 Argument의 차이를 알아보자 Parameter는 함수를 정의할 때 사용되는 변수를 의미한다. Argument는 실제로 함수가 호출될 때, 넘기는 변수값을 의미한다. val b: (Int) -> Int = { it * 10 } // 입력값이 하나 일 경우에 it으로 받을 수 있다. 함수 맨 마지막 줄에 오는 것이 return 값이다. val c = { i: Int, j: Int -> i * j } // 타입을 생략을 .. 2023. 8. 6.
[kotlin] 접근 제한자(Visibility Modifiers) 접근 제한자 접근 제한자는 해당 패키지나 클래스에 외부에서 접근하려 할 때, 접근을 제어할 수 있는 개념입니다.접근제한자는 패키지와 클래스에 접근할 때의 두 경우로 나뉘게 됩니다.- public, internal, private, protected - 변수, 함수 , 클래스 선언 시 맨 앞에 적어준다 - ex) private val number : Int =10 범위(Scope) - 변수(변수 자체가 Scope), 함수 ,클래스  - 규칙  - 같은 스코프 안에서는 공유 가능   - 하위 스코프에서는 상위 스코프 멤버를 사용 및 재정의(할당) 할 수 있다.      - 상위 스코프에서는 하위 스코프에 있는 맴버를 사용 및 재정의 할 수 없다.   프로젝트  -> 모듈들로 구성 모듈  -> 라이브러리로 구.. 2023. 1. 27.
[kotlin] 생성자 주 생성자는 클래스를 초기화할 떄 주로 사용하는 간략한 생성자로 클래스 본문 밖에서 정의하며부 생성자는 클래스 본문 안에서 정의한다.또한 코틀린에서는 초기화 블록(initializer block)을 통해 초기화 로직을 추가할 수 있다.   주생성자 -> 풀버전(생략이 없는 버전)- 클래스 이름 옆에 괄호로 둘러싸인 코드- 클래스를 통해서 객체를 만드는데 필요한 재료들을 적어준다- 재료이름(변수명): 재료타입(변수타입)- 반드시 한개만 존재할 수 있다. -> constructor 키워드를 생략가능하다. 주생성자 -> init을 생략하는 방법주생성자 -> constructor를 생략하는 방법주생성자 -> 기본값을 적어주는 방법주생성자 -> 생략할수 있는 모든 걸 생략하는 방법   this 키워드 사용부 생성.. 2023. 1. 26.
[Python] 백준 1920 수 찾기 N=int(input()) first=list(map(int,input().split())) M=int(input()) second=list(map(int,input().split())) for i in range(M): check=1 for j in range(len(first)): if(second[i]==first[j]): print("1") check=0 break if(check==1): print("0") 이중반복문을 사용하여 일일이 비교를 했더니 시간초과가 발생하였다. 문제해결을 위해 이진 탐색 알고리즘(Binary Search)을 사용했다. 이진 탐색을 적용 할 수 있는 전제 조건은 오름차순으로 정렬된 리스트이다. 앞에서 했던 코드처럼 처음부터 끝까지 하나씩 모든 데이터를 체크하여 값을 찾.. 2022. 3. 9.