https://programmers.co.kr/learn/courses/30/lessons/12943 코딩테스트 연습 - 콜라츠 추측 1937년 Collatz란 사람에 의해 제기된 이 추측은, 주어진 수가 1이 될때까지 다음 작업을 반복하면, 모든 수를 1로 만들 수 있다는 추측입니다. 작업은 다음과 같습니다. 1-1. 입력된 수가 짝수라면 2 programmers.co.kr 내 풀이 func solution(_ num:Int) -> Int { var count = 0 var number = num let noResult = -1 while number != 1 { if number % 2 == 0 { number = number / 2 count += 1 } else if number % 2 == 1 ..
고차함수에서 피해가고 싶었던 reduce ... 요즘 알고리즘 문제를 풀면서 모르면 안되겠다는 생각이 들어 한번 파보려고 합니다. 👊 공식문서 컨테이너의 요소들을 결합한 결과를 반환합니다. 예제를 통해서 보시죠!! 예제 1 let numbers: [Int] = [1, 2, 3, 4] var sum = numbers.reduce(initialResult: Result>, Result(Result, Int) throws -> Result(_ partialResult: Result, Int) throws -> Result) 먼저 initialResult, nextPartialResult 부분을 볼게요. initialResult: 결합을 시작하기전 초기 값을 지정 합니다. nextPartialResult: 요..
https://programmers.co.kr/learn/courses/30/lessons/12926 코딩테스트 연습 - 시저 암호 어떤 문장의 각 알파벳을 일정한 거리만큼 밀어서 다른 알파벳으로 바꾸는 암호화 방식을 시저 암호라고 합니다. 예를 들어 "AB"는 1만큼 밀면 "BC"가 되고, 3만큼 밀면 "DE"가 됩니다. "z"는 1만큼 밀 programmers.co.kr 내 풀이 못 푼 문제 못 푼 문제는 주말에 복습! 다른사람의 풀이 func solution(_ s: String, _ n: Int) -> String { let alphabets = "abcdefghijklmnopqrstuvwxyz".map { $0 } return String(s.map({ guard let index = alpha..
SceneDelegate란? iOS13 이후 UI생명주기에 관한 이벤트를 처리하기 위해 사용하는 객체 입니다. 화면에 무엇을 보여줄지 관리하는 역할을 하며, iOS 13부터 window의 개념이 scene으로 대체 되었습니다. why? 아이패드와 같이 큰 화면의 하나의 앱에서 2개 이상의 화면을 보여주기 위해 Scene 개념이 도입 되었습니다. SceneDelegate Methods 메소드 (펼쳐보기) 더보기 scene(_: willConnectTo: option:) application(_: didFinishLaunchingWithOptions:) 메소드와 유사합니다. UISceneSession LifeCycle 에서 가장 처음 불리는 메소드로 첫 content view, 새로운 UIWindow를 생성..
https://leetcode.com/explore/learn/card/fun-with-arrays/521/introduction/3238/ Explore - LeetCode LeetCode Explore is the best place for everyone to start practicing and learning on LeetCode. No matter if you are a beginner or a master, there are always new topics waiting for you to explore. leetcode.com 내 풀이 func findMaxConsecutiveOnes(_ nums: [Int]) -> Int { var count = 0 var saveOneCount: [In..
for문을 돌리다보면 index가 필요할 때가 있습니다. 이럴 때 Swift 에서 제공하는 메소드 enumerated() 를 사용하면 되는데요!! 오늘은 enumerated 메소드에 대해 공부해 보려고 해요 ! 공식문서 (n, x)와 같이 튜플 형태로된 쌍을 return 한다고 합니다. n은 0부터 연이어 시작되는 int 형식 x는 각 요소 별로 차례대로 시작 쉽게말해 (index, value) 라고 생각하시면 돼요! 예제를 보겠습니다 for (index, value) in "Swift".enumerated() { print("\(index): \(value)") } // 0: S // 1: w // 2: i // 3: f // 4: t "Swift" 라는 문자열을 하나씩 뜯어 print 해본 결과 입니..
MVC Model, View, Controller 로 나누어 설계한 아키텍처 패턴 입니다. 구조 MVC의 구조를 그림으로 나타내면 아래와 같습니다. Model : 앱에 사용되는 데이터와 데이터를 가공하는 부분 입니다. View : 사용자에게 보여지는 화면 부분(UI) 입니다. Controller : 사용자의 입력(Action)을 받아 처리하는 부분 입니다. 동작 순서 MVC의 흐름은 아래와 같습니다. 모든 입력(Action)은 Controller에 전달 및 처리가 됩니다. Controller는 사용자의 Action을 확인 후, Model을 업데이트 합니다. Controller는 Model을 나타내줄 View를 선택합니다. View는 Model을 이용해 화면을 나타냅니다. View가 업데이트 되는 방법 V..
https://programmers.co.kr/learn/courses/30/lessons/12928 코딩테스트 연습 - 약수의 합 정수 n을 입력받아 n의 약수를 모두 더한 값을 리턴하는 함수, solution을 완성해주세요. 제한 사항 n은 0 이상 3000이하인 정수입니다. 입출력 예 n return 12 28 5 6 입출력 예 설명 입출력 예 #1 12의 약수 programmers.co.kr 내 풀이 func solution(_ n:Int) -> Int { // TODO: [x] 약수들을 담을 배열 var aliquotArr: [Int] = [] // TODO: [x] 약수 구하기 for num1 in 0...n { for num2 in 0...n { if num1 * num2 == n { ali..
처음으로 프로그래머스에서 과제테스트를 봤었는데 제출 방법을 몰라 제출도 못했... 지금이라도 알았으니 됐지.. 무튼 !! 오늘은 앱 개발을 하면서 무조건 해보는 TableView를 코드로 작성해 보겠습니다!! 결과 TableView를 세팅할때는 아래 6가지를 구현해주시면 됩니다! ToDo 1. constraints 2. set delegate 3. make tableViewCell 4. register 5. row height 6. show data 1. constraints 먼저 tableView가 어느위치에 있을지 잡아줍니다. 저는 화면 전체를 꽉 채우도록 구현했어요. class TableViewController: UIViewController { var tableView = UITableView(..
https://programmers.co.kr/learn/courses/30/lessons/12948 코딩테스트 연습 - 핸드폰 번호 가리기 프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다. 전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자 programmers.co.kr 내 풀이 func solution(_ phone_number:String) -> String { var numberArr = [Character]() var frontNumber: String = "" var lastNumber: String = "" // TODO: [x] 전체번호 *로 바꾸기 for _ in phone_number { ..
- Total
- Today
- Yesterday
- swift 고차함수
- ios
- Swift 프로퍼티
- Swift 프로그래머스
- Swift Error Handling
- Swift
- Swift joined
- Swift ModernRIBs
- Class
- Swift joined()
- Swift RIBs
- 원티드 프리온보딩
- iOS error
- RIBs tutorial
- Swift 내림차순
- swift protocol
- RTCCameraVideoCapturer
- swift programmers
- CS 네트워크
- Swift 알고리즘
- 2023년 회고
- Swift final
- Swift init
- swift reduce
- Combine: Asynchronous Programming with Swift
- Swift Leetcode
- Swift inout
- swift (programmers)
- swift property
- removeLast()
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |