STUDYING
-
OptionalSTUDYING/Swift 2021. 10. 17. 14:42
Optional Optional Type Expression : ? 기본 구조 var myString: String? // Optional var myString2: String = String() // Non-Optional 반드시 이니셜라이저 해야함. 값으로서 존재는 함 nil : 아무것도 없고 어떤 상태인지 모르는 전혀 존재하지 않는 상태 네트워크로 데이터를 받을 때 Optional 사용 값이 있는 상태를 가정해서 사용할 수 없음 값이 무조건 있다는것을 가정하는 방식인 Force Unwrapping : ! 그러나 Force Unwrapping은 지양하는 것이 좋다. 안전하게 옵셔널을 제거하기 위해서 Optional Binding을 사용한다. Optional Binding 옵셔널 바인딩은 nil인지,..
-
Swift란STUDYING/Swift 2021. 10. 15. 23:44
Swift란? Swift는 애플의 iOS와 macOS를 위한 프로그래밍 언어로 2014년 6월 2일 애플 세계 개발자 회의(WWDC)에서 처음 소개되었다. 기존의 애플 운영체제용 언어인 Objective-C와 함께 공존할 목적으로 만들어졌다. Objective-C와 마찬가지로 LLVM으로 빌드되고 같은 런타임을 공유한다 2010년 크리스 래트너를 필두로한 애플 프로그래머들이 개발. Obj-C, C#, Python, Rust, haskell 등의 기존언어와 신생언어를 참조하여 만듬. 클로저, 다중리턴타입, 네임스페이스, 제네릭스, 타입인터페이스 등 Obj-C에는 없었던 현대 프로그래밍 언어가 갖고 있는 기능들이 많이 포함됨. 2015년 12월 오픈소스전환 Github LLVM Swift 언어 특징 안전성(..
-
조합STUDYING/Algorithm 2021. 10. 5. 14:33
조합 For문 사용 ( n이 정해져 있을 때) public class 조합_for { public static void main(String[] args) { int[] arr = {1, 3, 5, 7, 9}; // 5C3 arr의 5개 원소중 임의의 3개 선택 for (int i = 0; i < arr.length - 2; i++) for (int j = i + 1; j < arr.length - 1; j++) for (int k = j + 1; k < arr.length; k++) System.out.println(arr[i] + " " + arr[j] + " " + arr[k]); } } 재귀사용 import java.util.Arrays; public class 조합_재귀 { public stat..
-
[Programmers] H-IndexSTUDYING/Algorithm 2021. 9. 27. 00:45
https://programmers.co.kr/learn/courses/30/lessons/42747 코딩테스트 연습 - H-Index H-Index는 과학자의 생산성과 영향력을 나타내는 지표입니다. 어느 과학자의 H-Index를 나타내는 값인 h를 구하려고 합니다. 위키백과1에 따르면, H-Index는 다음과 같이 구합니다. 어떤 과학자가 발표 programmers.co.kr import java.util.*; class Solution { public int solution(int[] citations) { int answer = 0; Arrays.sort(citations); // System.out.println(Arrays.toString(citations)); for(int i = citati..
-
[Programmers] 경주로 건설STUDYING/Algorithm 2021. 9. 27. 00:44
https://programmers.co.kr/learn/courses/30/lessons/67259 코딩테스트 연습 - 경주로 건설 [[0,0,0,0,0,0,0,1],[0,0,0,0,0,0,0,0],[0,0,0,0,0,1,0,0],[0,0,0,0,1,0,0,0],[0,0,0,1,0,0,0,1],[0,0,1,0,0,0,1,0],[0,1,0,0,0,1,0,0],[1,0,0,0,0,0,0,0]] 3800 [[0,0,1,0],[0,0,0,0],[0,1,0,1],[1,0,0,0]] 2100 [[0,0,0,0,0,0],[0,1,1,1,1,0],[0,0,1,0,0,0],[1,0,0,1,0,1],[ programmers.co.kr import java.util.LinkedList; import java.util.Qu..
-
[Programmers] 자연수 뒤집어 배열로 만들기STUDYING/Algorithm 2021. 9. 27. 00:43
https://programmers.co.kr/learn/courses/30/lessons/12932 코딩테스트 연습 - 자연수 뒤집어 배열로 만들기 자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다. 제한 조건 n은 10,000,000,000이하인 자연수입니다. 입출력 예 n return 12345 programmers.co.kr func solution(_ n:Int64) -> [Int] { var scattered = String(n).map{ String($0) } scattered.reverse() let res = scattered.compactMap{Int($0)} return res }
-
[Programmers] 수박수박수박수박수박수?STUDYING/Algorithm 2021. 9. 27. 00:43
https://programmers.co.kr/learn/courses/30/lessons/12922 코딩테스트 연습 - 수박수박수박수박수박수? 길이가 n이고, "수박수박수박수...."와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 "수박수박"을 리턴하고 3이라면 "수박수"를 리턴하면 됩니다. 제한 programmers.co.kr func solution(_ n:Int) -> String { var res = "" for i in 0..