์ ์ฒด ๊ธ196 ๊ฐ์๊ธฐ ๋งฅ๋ถ ์ธํฐ๋ท ์๋ ๋(์์ดํ์ด ์ง์ ๋ค ๊น์๋๋ฐ๋ ์๋๋ค๋ฉด !) ์์ดํ์ด๋ ์ ๋๋๋ฐ ๊ฐ์๊ธฐ ๋งฅ๋ถ ์ธํฐ๋ท๋ง ์๋๋ค๋ฉด, ์์ดํ์ด๋ ๋ค์ด์ค๋๋ฐ ๊ฐ์๊ธฐ ์ธํฐ๋ท์ด ์๋๋ฉด 1. ์ฐ์ ์์ดํ์ด๋ฅผ ์ง์๋ด ๋๋ค. ๋คํธ์ํฌ ํ๊ฒฝ์ค์ ์ ์ฐ๋ค - ๋ฅผ ๋๋ฌ์ ์์ดํ์ด๋ฅผ ์ง์ฐ๊ณ +๋ฅผ ๋๋ฌ์ ์์ดํ์ด๋ฅผ ์ถ๊ฐํด ์ฃผ์ธ์ ๊ทธ๋ฐ๋ฐ๋ ์๋๋ค๋ฉด 2. ์ปค๋ฅํฐ ๋ค ๋ฝ์๋ณด์ธ์ ์ถฉ์ ๊ธฐ ๋นผ๊ณ ์ฐ๊ฒฐ๋์ด ์๋ ์ญ ๋ค ๋ฝ์๋ฒ๋ฆฌ์ธ์ ์ ๋ ์ด ๋ฐฉ๋ฒ์ผ๋ก ๋ฌ์ต๋๋ค. ์ง์ง ์ด์ด์... 2020. 11. 30. [leetCode] 13. 3Sum (์๊ณ ๋ฆฌ์ฆ, ์๋ฆฌ) with Swift leetCode submit ํต๊ณผํ๋ฉด ๋ค๋ฅธ ๋ถ๋ค์ด ์ง ๋์ผ์ ํ์์ ์ธ ์๊ณ ๋ฆฌ์ฆ ๋ณผ ์ ์์ต๋๋ค. ์ ๊ป ์ฐธ๊ณ ์ ํต๊ณผ์ฉ์ผ๋ก ๋ด์ฃผ์ธ์ ใ ใ ํจ์จ์ฑ ๊ฐ๋ค๋ฒ๋ฆฐ ์ฝ๋์ ๋๋ค. ํํฃ ๋ค๋ฅธ ๊ธ์์ ์ผํ ๋ ธ๊ฐ๋ค ์ฝ๋๋ผ๊ณ ์ ํ ๊ฑธ ๋ดค์ด์ ใ ใ ์๋ง ๋ค๋ฅธ ๋ฐฉ๋ฒ์ผ๋ก ํ์ํ๋ ๊ฒ๋ ์๊ฒ ์ง๋ง ์ด๋ป๊ฒ๋ ํ์ ๋ฒ์๋ฅผ ์ค์ด๋ ๊ฒ์ด ์ด ๋ฌธ์ ์์ time ๋ณต์ก๋๋ฅผ ์ค์ผ ์ ์๋ ๋ฐฉ๋ฒ์ด ์๋๊น ์ถ์ต๋๋ค. ๐๊ด๊ณ ๋ถ์ด๊ณ ๋ฌธ์ ๋ ์์ ์ฌ๋ฆฌ๋ฉด ์๋๋ค๊ณ ๋ค์ด์ ๋ฌธ์ ๋ ๋งํฌ๋ก ๋์ ํฉ๋๋ค ๐ https://leetcode.com/problems/3sum/ 3Sum - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowl.. 2020. 11. 4. Mac์ Realm Studio ์ค์นํ๊ธฐ (์ ์ฑ ์ํํธ์จ์ด๊ฐ ์๋์ง ํ์ธ ํ ์ ์๊ธฐ ๋๋ฌธ์ ์ด ์ ์์ต๋๋ค.) realm.io/kr/products/realm-studio/#download-studio Realm Studio: open, edit, and manage your Realm data Download our cross-platform developer tool for the Realm Database and Realm Platform. Available for Mac, Windows, and Linux. realm.io ์ ๋งํฌ ํด๋ฆญ ์ด์์ฒด์ ์ ๋ง๋ ๋ฒํผ์ ๋๋ฌ์ฃผ๋ฉด ๋ค์ด๋ก๋๋ฅผ ์์ํฉ๋๋ค. ์ค์นํ ์์น์ ์๋ Realm Studio๋ฅผ Applications ํด๋๋ก ์ฎ๊ฒจ ์ฃผ์ธ์ dmg ํ์ผ์ ์ง์์ฃผ์ ๋ ๋ฉ๋๋ค. ๋ค์ด๋ก๋์ ๋ํด ๋ณ๋ค๋ฅธ ์ค์ ์ ํ์ง ์์ผ๋ฉด 'Realm Studio'์(๋) Apple์์ ์ ์ฑ.. 2020. 10. 25. [ํ๋ก๊ทธ๋๋จธ์ค] ์์ฃผํ์ง ๋ชปํ ์ ์ with python (feat. hash) ํด์ ํ ์ด๋ธ Key & Values - ํด์ ํ ์ด๋ธ์ value์ key๋ฅผ ๊ฐ์ง - ๋์ ๋๋ฆฌ์ ๋ค๋ฅธ ์ ์ key๊ฐ ๊ณ์ฐ๋ ์ซ์ ์ํ์ค ํน์ char - ๋ฐฐ์ด์ ์ฌ์ฉํด์ ์ฐ์์ ์ด์ง ์์ buckets๋ผ๊ณ ๋ถ๋ฆฌ๋ ๊ตฌ์กฐ์ ์ ์ฅ - ๊ฐ ๊ฐ์ ์์น๋ ํด์ ํจ์์ ์ํด ๊ณ์ฐ ํด์ ์ถฉ๋(collisions) ๋ค๋ฅธ ๊ฐ์ input ํ์ง๋ง ๊ฐ์ hash๊ฐ์ ๊ฐ์ง๋ ๊ฒฝ์ฐ(๋ค๋ฅธ ๊ฐ์ด๋ผ๋ ๊ฐ์ ํด์๋ฅผ ๊ฐ์ง ์ ์์ง๋ง ๊ฐ์ ํด์ ๊ฐ์ด๋ผ ํด์ ๊ฐ์ ์ธ์คํด์ค๋ ์๋ -> ๋จ๋ฐฉํฅ) ํด์์ ์ฅ์ ์ค๋ณต์ ํ์ฉํ์ง ์๊ธฐ ๋๋ฌธ์ ์ค๋ณต๋์ง ์๋ ๋ฐ์ดํฐ ๊ฐ์ ๊ฐ์ ธ์ผ ํ๋ ๊ตฌ์กฐ์์ ์ฌ์ฉํ ์ ์๋ค. ํนํ ๊ทธ ํฌ๊ธฐ๊ฐ ์ด๋ป๋ ๊ฐ์ ๊ฐ์ ์ฐพ๋ ์๊ฐ ๋ณต์ก๋๊ฐ O(1)์ด๊ธฐ ๋๋ฌธ์ ํฌ๊ธฐ๊ฐ ํฐ ๋ฐ์ดํฐ์์ ๊ฐ์ ํจ๊ณผ์ ์ผ๋ก ์ฐพ์ ์ ์๋ค. ๋์ ๋๋ฆฌ๋ฅผ ์ฌ์ฉํ ์ด.. 2020. 10. 13. iOS์์ MVC์ MVVM ๊ฐ๋จํ ์ดํด๋ณด๊ธฐ ์ฐธ๊ณ ์ฌ์ดํธ ๐ iOS MVVM Tutorial: Refactoring from MVC In this iOS tutorial, you’ll learn how to convert an MVC app into MVVM. In addition, you’ll learn about the components and advantages of using MVVM. www.raywenderlich.com ํ๋ก๊ทธ๋๋ฐ์ ํ๋ค๋ณด๋ฉด ์ด๋ป๊ฒ ์์กด์ฑ์ ์ค์ด๊ณ ๊ฐ ํน์ง์ ๋ง๊ฒ ํด๋์ค๋ฅผ ๋ถ๋ฆฌํ๋ฉฐ ๋ณต์กํ๊ณ ๋์กํ ์ฝ๋๋ฅผ ๊น๋ํ๊ฒ ์ ์งํ๋ ค๋ ๋ ธ๋ ฅ์ ๋ณผ ์ ์๋ค. ์น ํ๋ก๊ทธ๋๋ฐ์์๋ MVC๋ฅผ ๋ฐฐ์ฐ๊ฒ ๋๋๋ฐ ์ด๋ M์ model์ ์ฝ์๋ก ๋ฐ์ดํฐ์ ๋ชจ์์ด๋ ๋ฐ์ดํฐ ํด๋์ค, ๋ฐ์ดํฐ ๊ฐ์ฒด ๋ฑ์ ์๋ฏธํ๋ค. V๋ view์ ์ฝ์๋ก์ ์ฌ์ฉ์์๊ฒ ๋ณด์ฌ.. 2020. 10. 12. API ์ฌ์ดํธ ๋ชจ์ (์์ ์ ๋ฐ์ดํธ) https://www.weatherbit.io/ Weatherbit | Weather API - Historical Weather API Simple. Powerful. Reliable. Getting access to weather data or historical weather data has never been easier. Unparalleled Forecast Accuracy We leverage the power of forecast models, and machine learning to deliver the most accurate weather forecast API on www.weatherbit.io ๊ฐ์ ํด์ free plan์ผ๋ก ์ฌ์ฉํ๋ฉด ์ ํ๋ ํ์ ์์์ ๊ตญ๊ฐ, ์ง์ญ์ ๋ ์จ API.. 2020. 10. 12. [leetCode] 152. Maximum Product Subarray ์นด๋จ ์๊ณ ๋ฆฌ์ฆ์ ๋ณํ ์ ๋ฒ leetCode์์ ํ์๋ Maximum Subarray์ ๋น์ทํ ๋ฌธ์ ์ด๋ค. ๋๋ฌธ์ ๊ธฐ์กด์ ์ตํ๋ ์นด๋จ ์๊ณ ๋ฆฌ์ฆ์ ์ฌ์ฉํ๋ฉด ๋์ง๋ง ๋ณ์๊ฐ ์กด์ฌํ๋ค. Product๋ ๊ณฑ์ผ๋ก์ ์์์ ์์์ ๊ณฑ์ ์์๊ฐ ๋๊ณ ์์์ ์์๋ฅผ ๊ณฑํ๊ฒ ๋๋ฉด ์์๊ฐ ๋๊ธฐ ๋๋ฌธ์ ์ด ๊ฒฝ์ฐ์ ์๋ฅผ ๋๋นํ์ฌ ์ต๋ ๊ฐ์ ๊ตฌํด ์ฃผ์ด์ผ ํ๋ค. ์นด๋จ ์๊ณ ๋ฆฌ์ฆ์ ์ฝ๊ฒ ๋งํ๋ฉด ํ์ฌ ๊ฐ์ผ๋ก๋ง ์ด๋ฃจ์ด์ง ์ด๋ ์ด์ ์ด์ ์ด๋ ์ด+ํ์ฌ๊ฐ์ผ๋ก ์ด๋ฃจ์ด์ง ์๋ธ ์ด๋ ์ด์ ๋น๊ต๋ผ๊ณ ํ ์ ์๋ค. class Solution { func maxProduct(_ nums: [Int]) -> Int { var num = nums var maxP = num[0] var minP = num[0] var answer = num[0] for i in 1.. 2020. 10. 12. [Swift] ํ๋ก์ ํธ์ Realm ์ ์ฉํ๊ธฐ (cocoapod ๋ถํฐ ์ฐจ๊ทผ์ฐจ๊ทผ) Swift ํ๋ก์ ํธ์ Realm ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํด์ ์ฝ์ฝ์ํ์ผ๋ก install ํด๋ด ์๋ค~ ์ฐ์ ํ ๊ฒ์ Finder์ ์์ ์ ํ๋ก์ ํธ ํ์ผ์ ๋์ ๋์ผ์ธ์ ์ ํ๋ก์ ํธ ํ์ผ ๋ช ์ "Universal Memo" ์ ๋๋ค. ์ด์ Command + Space bar๋ฅผ ๋๋ฌ์ terminal์ ๊ฒ์ํ๊ณ ์คํ ํฉ๋๋ค cd๋ฅผ ์ ๋ ฅํ๊ณ ํ๋ก์ ํธ ํ์ผ์ dragํด์ terminal๋ก ์ด๋์์ผ ์ฃผ์ธ์ ๊ทธ๋ฆฌ๊ณ enter์ ๋๋ฌ์ฃผ๋ฉด ํด๋น ํด๋์์ ์์ ์ ์คํ ํ ์ ์์ต๋๋ค. ์ด๋ ๊ฒ ์์ ์ ํ๋ก์ ํธ๋ก ์์ ํ์ผ ์์น ๋ณ๊ฒฝ ๋ ๊ฑธ ํ์ธํ๊ณ pod init ์ ์ ๋ ฅํด ์ฃผ์ธ์ ๊ทธ๋ฌ๋ฉด ํ๋ก์ ํธ ํ์ผ์ ๋ณด๋ฉด Podfile์ด ์์ฑ๋์ด ์๋ ๊ฒ์ ํ์ธ ํ ์ ์์ต๋๋ค. ์ ๋ vi ํธ์ง๊ธฐ๋ฅผ ์ฌ์ฉํ๊ฒ ์ต๋๋ค. ๋ค์ terminal๋ก.. 2020. 10. 8. [Swift] Notification์ผ๋ก view์ view ๋ฐ์ดํฐ ์ ๋ฌํ๊ธฐ ๋์ค์ ์ฐธ๊ณ ํ๋ ค๊ณ ์ ๋ ๊ธ ํด๋์ค ์ ์์ ์ฒดํฌํ ์ ์๊ฒ ๋์(?) ๋๋์ด Notification์ ์ฐ๊ธฐ๋ก ํ๋ค! ์ RxRxํ๋์ง ์๊ฑฐ ๊ฐ๋ค... ใ ใ ใ 1. Notification ๋ฑ๋กํ๊ธฐ NotificationCenter.default.addObserver(self, selector: #selector(updateDateLabel(_:)), name: .updateYearDate, object: nil) NotificationCenter.default.addObserver(self, selector: #selector(updateHour(_:)), name: .updateHour, object: nil) NotificationCenter.default.addObserver(self, selecto.. 2020. 10. 7. [leetCode] 53. Maximum Subarray with Swift ์นด๋จ ์๊ณ ๋ฆฌ์ฆ์ผ๋ก ์ฝ๊ฒ ๊ตฌํ๊ธฐ leetCode 53์ ๋ชจ๋ ์์์ ๊ฐ์ ํฉ์ด ์ต๋๊ฐ์ ๊ฐ์ง๋ ์๋ธ ์ด๋ ์ด๋ฅผ ๊ตฌํ๋ ๊ฒ์ด ๋ชฉํ์ ๋๋ค. ์ด๋ ์๋ธ ์ด๋ ์ด๋ ์ฐ์์ฑ์ ๊ฐ์ ธ์ผ ํ๋๋ฐ, ์ด ๋ป์ ์ค๊ฐ ์ธ๋ฑ์ค๋ฅผ ๋ฐ์ด ๋์ง ์๊ณ ์ธ๋ฑ์ค ์์๋๋ก ๋์ด ์๋ ์ด๋ ์ด์ ๋๋ค. ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ ๋ฐฐ์ด์์ ์ต๋๊ฐ๋ค์ ์กฐํฉ๋ง์ ์ฐพ์ ๊ตฌํ๋ ๊ฒ์ด ์๋๋ฉฐ ์ด๋ค ์๋ธ ์ด๋ ์ด๊ฐ ๊ฐ์ฅ ์ต๊ณ ์ ๊ฐ์ ๊ฐ์ง๊ณ ์๋์ง ๊ตฌํ๋ ๊ฒ์ด ์ด ๋ฌธ์ ์ ํฌ์ธํธ ์ ๋๋ค. ์๋ธ ์ด๋ ์ด์ ์ต๋๊ฐ์ ๊ตฌํ๋ ๋ฌธ์ ์์ ๋ง์ด ์ธ๊ธ๋๋ ์๊ณ ๋ฆฌ์ฆ์ Kadane ์๊ณ ๋ฆฌ์ฆ์ ๋๋ค. reference Youtube video here ๐ ์ฐ์ ๋ฌธ์ ์์ ์ฃผ์ด์ง [-2, 1, -3, 4, -1, 2, 1, -5, 4]๋ฅผ ๋ด ์๋ค. ์ฌ๊ธฐ์ ์ฒซ๋ฒ์งธ 4๋ฅผ ์ค์ ์ผ๋ก ๋ณด๊ฒ ์ต๋๋ค. ํ์ฌ ์ธ๋ฑ์ค๋ 3์ด๊ณ ๊ทธ ์ธ๋ฑ์ค์ ๊ฐ์ 4์ ๋๋ค.. 2020. 10. 6. [Swift] Date์ DateFormatter๋ก ํ๊ตญ ํ์ฌ ์๊ฐ ๊ตฌํ๊ณ UILabel์ ๋ฃ์ด๋ณด๊ธฐ ๊ทธ ๋์ ๋ฏธ๋ฃจ๊ณ ์์๋ Date๋ฅผ ๋ณผ๋๊ฐ ์จ๊ฑฐ ๊ฐ๋ค....๐คจ Horizontal collectionView์ ์ฒซ ๋ฒ์งธ ์ ์ ํ์ฌ ๋ ์ง๋ก ๊ธฐ์คํด์ ๊ทธ ๋ค์ ๋ ์ ๋ค์ ์ ์ ํ ๋นํด ์ฃผ๋ ์์ผ๋ก ๋ง๋ค๊ฒ๋๋ค! ์ฐ์ now๋ผ๋ ํ๋กํผํฐ๋ฅผ ๋ง๋ค์ด ์ค๋๋ค. let now = Date().timeIntervalSince1970 Date() ๋ ํ์ฌ ๋ ์ง์ ์๊ฐ์ ๋ฐํํ๊ฒ ๋๋๋ฐ timeIntervalSince1970์ 1970๋ ์ดํ๋ก ๋ช ์ด๊ฐ ํ๋ ๋์ง ๋ํ๋ ๋๋ค. ํ์ฌ ์๊ฐ์ now๋ผ๋ ํ๋กํผํฐ์ ์ง์ ํด ์ค๋๋ค. ๋ค์์ผ๋ก DateFormatter์ ์์ฑํฉ๋๋ค. let date: DateFormatter = { let df = DateFormatter() df.locale = Locale(identifier: "ko.. 2020. 9. 29. [Swift] UICollectionViewCell ์์ UICollectionView ๋ฃ๊ธฐ UICollectionViewCell ๋ํ ํ๊ณ ํ๊ณ ์ฌ๋ผ๊ฐ๋ค ๋ณด๋ฉด UIView์ด๊ธฐ ๋๋ฌธ์ ๊ธฐ์กด์ ์ ์ฉํ ๋ฐฉ์๊ณผ ๋๊ฐ์ด ํด์ฃผ๋ฉด ๋ฉ๋๋ค. ๊ตฌ์ฑ์ ๋ณด๋ฉด ์ฃผํฉ์ ๋ทฐ๋ 3๊ฐ์ ์น์ ์ ๊ฐ์ง UICollectionView์ด๊ณ ์ด๋ก์ ๊ตฌ์ฑ์ ๋ณด๋ฉด ์ฃผํฉ์ ๋ทฐ๋ 3๊ฐ์ ์น์ ์ ๊ฐ์ง UICollectionView์ด๊ณ ์ด๋ก์์ ๊ฐ ์น์ ์ ๋ค์ด๊ฐ ์๋ ํ๋์ UICollectionViewCell ์ ๋๋ค ๊ทธ๋ฆฌ๊ณ ๋ถํ์์ ๋ง์ง๋ง ์น์ ์ ์๋ UICollectionViewCell์ UICollectionView๋ฅผ ๋ฃ๊ณ sub cell์ ๊ตฌํํด ์ค ๋ชจ์ต์ ๋๋ค ์ฐ์ ๋ง์ง๋ง ์ค์ ์๋ ์ด๋ก์ UICollectionViewCell์ ํด๋์ค ์ด๋ฆ์ MinutePickerCell ์ด๋ผ๊ณ ํ๊ณ ์ฌ๊ธฐ์ ๋ถํ์์ UICollectionView๋ฅผ .. 2020. 9. 29. ์ด์ 1 ยทยทยท 10 11 12 13 14 15 16 17 ๋ค์