반응형

sysout 258

[알고리즘] 4강 병합정렬 (merge sort)

4강 합병 정렬(merge sort) 합병 정렬은 다음과 같은 단계를 가진다 분할 : 해결하고자 하는 문제를 작은 크기의 동일한 문제들로 분할 정복 : 각각의 작은 문제를 순환적으로 해결 합병 : 작은 문제의 해를 합하여(merge) 원래 문제에 대한 해를 구함 [6, 4, 1, 2, 3, 5, 7, 8] 을 예시로 합병 정렬하면 아래 그림과 같은 단계로 정렬이 진행된다. 1차원 배열을 가장 작은 단위, 즉 1의 단위까지 쪼갠다. 가장 작은 단위로 쪼갠 후 배열의 왼쪽/오른쪽 값을 비교한다. 작은 값을 새 배열에 추가하고, 다음 작은 값을 새 배열에 추가한다. 비교하는 과정하고 추가하는 과정이 종료되는 어느 한쪽 배열에 값은 남게 되는 데 이때 반복문을 이용해 왼쪽 배열부터 새 배열에 모두 추가하고, 오..

Introducing the Create ML App 정리 - WWDC2019

WWDC 영상 링크 - Introducing the Create ML App - WWDC 2019 - Videos - Apple Developer Create ML App Create ML 앱을 사용해서 머신 러닝에 관한 전문적인 지식이 없더라도 머신 러닝 모델을 구축하고 학습시키고 배포할 수 있음 https://developer.apple.com/kr/machine-learning/create-ml/ 새로운 모델 (활동, 소리 추가) 새로운 워크 플로우 모델 템플릿 물체 인식, 활동 및 음향 분류, 추천 제공을 위한 모델 구축 텍스트 분류를 위해 단어 임베딩 및 전이 학습 활용 가능 다중 모델 학습 동시에 서로 다른 데이터세트를 사용하여 다중 모델 학습 미리보기 출력탭에서 학습된 모델을 미리볼 수 있음..

Programming/WWDC 2020.03.06

[알고리즘] 3강 기본적인 정렬 알고리즘 정리

3강 기본적인 정렬 알고리즘 정리 정렬 알고리즘 종류 simple, slow bubble sort insertion sort selection sort quick quick sort merge sort heap sort O(N) radix sort 1. Selection Sort (선택 정렬) 선택 정렬은 배열의 값 중 하나를 선택해 기준으로 두고 정렬하는 알고리즘이다. data[Int] 변수가 있을 때 배열의 data[i]을 기준으로 두어 변수에 값을 저장한다. (data[i]을 배열의 min 값으로 예상) min 값과 data[i+1] 값을 비교하여 data[i+1] > min 이면 min에 data[i+1] 값을 대입한다. data[i] 과 min 값을 swap 한다. 1~3번까지 반복한다. // ..

[알고리즘] 순환(Recursive) 개념과 기본 예제 3 정리

순환(Recursive) 개념과 기본 예제 3 정리 Designing Recursion; 순환 알고리즘의 설계 1. 순환 알고리즘 설계 적어도 하나의 base case, 즉 순환되지 않고 종료되는 case가 있어야 함 모든 case는 결국 base case로 수렴해야 함 KeyPoint - 암시적(implicit) 매개변수를 명시적(explicit) 매개변수로 바꾸어라 2. 예제 - 순차 탐색 data[0]에서 data[n-1] 사이에서 target을 검색한다 // 6. 순차 탐색 - 변경 전 func search(data: [Int], n: Int, target: Int) -> Int { for i in 0.. 배열의 시작 인덱스를 뜻하는 암시적 매개변수 if data[i] == target { ret..

[알고리즘] 순환(Recursive) 개념과 기본 예제 2 정리

순환(Recursive) 개념과 기본 예제 2 정리 Recursive Thinking; 순환적으로 사고하기 1. Recursion은 수학 함수 계산에만 유용한가? → 다른 많은 문제들을 recursion으로 해결할 수 있다 많은 예제들 문자 개수 세기 문자열을 뒤집어 출력하기 2진수로 변환하여 출력 배열의 합 구하기 데이터 파일로 부터 n개의 정수 읽어 오기 ... 1. 2진수 변환 출력 예제 // 4. 2진수로 변환하여 출력 func printBinary(n: Int) { // 음이 아닌 정수 n을 이진수로 변환하여 인쇄한다 if n < 2 { print(n, terminator: "") } else { printBinary(n: n / 2) // n을 2로 나눈 몫을 먼저 2진수로 변환하여 인쇄한 후..

[알고리즘] 순환(Recursive) 개념과 기본 예제 1 정리

순환(Recursive) 개념과 기본 예제 1 정리 순환(Recursive) 자기 자신을 호출하는 함수 1. 순환은 항상 무한 루프에 빠질까? 단순 호출만 하면 발생 가능 // 1. 무한 루프 예제 func infinityLoop() { print("Hello, World!") infinityLoop() } infinityLoop() recursion이 적절한 구조를 가지게 해서 무한 루프에 빠지지 않도록 함 2. 적절한 구조? func sum(n: Int) -> Int { if n == 0 { // Base Case - n이 0이면 종료 return 0 } else { return n + sum(n: n-1) // Recursive Case - 반복하다가 n이 0이 되는 순간이 온다 } } Base C..

Introducing SwiftUI: Building Your First App 정리 - WWDC2019

Introducing SwiftUI: Building Your First App - WWDC 2019 - Videos - Apple Developer Introducing SwiftUI: Building Your First App - WWDC 2019 - Videos - Apple Developer See SwiftUI in action! Watch as engineers from the SwiftUI team build a fully-functioning app from scratch. Understand the philosophy... developer.apple.com 아래 내용은 WWDC2019 영상과 SwiftUI 소개 글을 조합하여 정리함 (WWDC 영상 가운데 나오는 SwiftUI의 매커니즘..

Programming/WWDC 2020.03.01

Advances in Speech Recognition 정리 - WWDC2019

Advances in Speech Recognition - WWDC 2019 - Videos - Apple Developer Advances in Speech Recognition - WWDC 2019 - Videos - Apple Developer Speech Recognizer can now be used locally on iOS or macOS devices with no network connection. Learn how you can bring text-to-speech... developer.apple.com 음성 인식 변경 내용 macOS, AppKit, iPad 앱 지원 50개 이상의 언어 지원 장치 인식 지원 (On-Device) 으로 앱에서는 네트워크 연결에 의존할 필요 없음 장치 ..

Programming/WWDC 2020.02.24

DDD 3기 활동 회고 (2019.10.26 ~ 2020.02.15)

DDD 블로그 2019년 10월부터 한 DDD 3기가 바로 어제 끝이 났다 10월에 했던 OT는 살짝 따스했던.. 날이었는데 DDD에서 팀 구성을 알려주고 팀 이름 짜는 거랑 아이스 브레이킹하는 시간을 가졌다. 당시 팀 이름 짜는 거에 매우 힘듦을 느꼈지만 다행히도 팀원 모두 귀엽고 마음에 드는 5959로 결정! 이후 팀 모임을 1-2주에 한 번씩 정기적으로 가지며 아이디어 회의를 하고 기획&디자인을 진행했다. 회사 다니면서 매주 모일 때는 좀 힘들기도 했는데 퇴사하니 크게 부담되진 않은.. 사이드 프로젝트는 항상 혼자 해봤지 팀으로 해본 건 처음이었는데 팀장님 덕에 스프린트도 경험해보고 Figma처럼 안써본 툴도 써보고 다른 iOS 개발자 분과 협업하는 것도 좋은 경험이었다. 내가 회사에서 다른 모바일..

Active/회고 2020.02.16
728x90
반응형