์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
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 |
- Core Data
- ์ฑ๋ง๋ค๊ธฐ
- DispatchQueue
- ํ๋ก๊ทธ๋๋จธ์ค
- ์๊ณ ๋ฆฌ์ฆ
- Codable
- CRUD
- components
- map
- UIRefreshController
- nodejs
- ์ฑ๋์์ธ
- ์ง๋ฒ๋ณํ
- ios
- MongoDB
- Cloud Firestore
- SWiFT
- Mac
- ExpressJS
- RxSwift
- Firestore CRUD
- Filter
- Decodable
- AVAudioPlayer
- Reduce
- Encodable
- Figma
- mongoose
- Firestore
- String.Index
- Today
- Total
Focus On Develop ๐ค๐ค
[ํ๋ก๊ทธ๋๋จธ์ค] ๋ฌธ์์ด ๋ด ๋ง์๋๋ก ์ ๋ ฌํ๊ธฐ ๋ณธ๋ฌธ
[ํ๋ก๊ทธ๋๋จธ์ค] ๋ฌธ์์ด ๋ด ๋ง์๋๋ก ์ ๋ ฌํ๊ธฐ
๋๋ฆฌ๋ฌ์ดํ 2020. 12. 18. 10:46<๋ฌธ์ >
<์ ๋ต์ง๊ธฐ>
string์ ๋ด๊ณ ์๋ ๋ฐฐ์ด์ด ์ฃผ์ด์ง๊ณ , ๊ฐ ์์์ ํน์ ์ธ๋ฑ์ค์ ์๋ ๊ฐ์ ๊ธฐ์ค์ผ๋ก ์ ๋ ฌํ๋, ๊ทธ ๊ฐ์ด ๋์ผํ๋ฉด ์ฌ์ ์์ผ๋ก ์ ๋ ฌํด์ผ ํ๋ ๋ฌธ์ ๋ค. ๊ทธ๋์ ๊ณ ๋ฏผํด๋ดค๋๋ฐ.. ํน์ ์ธ๋ฑ์ค์ ์๋ ๊ฐ์ผ๋ก ์ ๋ ฌ์ ํ๊ณ ๋์ ์์ธ ๊ฑธ ์ด๋ป๊ฒ ์ํ๋ฒณ ์์ผ๋ก ๋ง์ถ์ง!? ๊ทธ ๊ธฐ์ค๊ฐ์ ๋ํด ๊ทธ๋ฃจํ์ด ๋์ด์์ด์ผ ํ๋!? ํ๋ฉด์ Dictionary๋ก ํ์ด์ผ ํ ๊น ์ถ์๋๋ฐ.. ๊ณฐ๊ณฐํ ๋ณด๋ค๋ณด๋ ใ ใ ์ด๊ฒ ์์๋ง ๋ฐ๊ฟ์ฃผ๋ฉด ๋์์? ๋จผ์ ์ํ๋ฒณ ์์๋ก ์ ๋ ฌํ ๋ค์, ํน์ ๊ธฐ์ค์ผ๋ก ์ ๋ ฌํด๋ ๊ธฐ๋ณธ ๋ฒ ์ด์ค ์์๋ ์ ์ง๋๊ฒ ๊ตฐ!? ใ ใ
<์ฝ๋>
func solution(_ strings:[String], _ n:Int) -> [String] {
let sorted = strings.sorted()
return sorted.sorted { $0[$0.index($0.startIndex, offsetBy: n)] < $1[$1.index($1.startIndex, offsetBy: n)] }
}
<Lesson Learned>
์ง๋๋ฒ์ ๋ฌธ์ ๋ฅผ ํ๋ฉด์ String.Index์ ๋ํด ๊ณต๋ถํ๊ณ ํ๋ฒ ์ ๋ฆฌ๋ฅผ ํด๋๊ฒ ๋์์ด ๋๊ณ , ์ข ๋ Index๋ฅผ ๋ค๋ฃจ๋ ์ค๋ ฅ์ด ํฅ์๋ ๊ฒ ๊ฐ๋ค! ๋ฟ๋ฏ ๐๐ ์ฌ์ค ์ง๋๋ฒ์ String.Index๋ฅผ ์ฌ์ฉํ์ง ์๊ณ ๋ฐ๋ก Array๋ก castingํด๋ฒ๋ฆฌ๋ฉด ํํ ์๊ณ ์๋ ์ซ์ ์ธ๋ฑ์ค๋ก ์ฝ๊ฒ ์ ๊ทผ์ด ๊ฐ๋ฅํ๋ค๊ณ ์ ๋ฆฌ๋ฅผ ํด๋๊ฑด๋ง...ใ ใ ใ ์ด๋ฒ์๋ ์์ฉ๋ ฅ์ด ๋ธ๋ ค์ String.Index๋ฅผ ์ฌ์ฉํ๊ณ ๋ง์๋ค..?? ๐ ๐ ใ ใ ์ข๋ ๊น๋ํ๊ฒ ํ๋ ค๋ฉด ์๋์ฒ๋ผ Closure์์ sorted์ ํ๋ํ๋๋ฅผ Array๋ก castingํ๋ฉด ์ข์์ ๊ฒ ๊ฐ๋ค ๐
func solution(_ strings:[String], _ n:Int) -> [String] {
let sorted = strings.sorted()
return sorted.sorted { Array($0)[n] < Array($1)[n] }
}
์ถ๊ฐ๋ก, ๋ค๋ฅธ์ฌ๋์ ํ์ด ์ค ํ๊ธฐ์ ์ธ๊ฒ ํ๊ฐ์ง ์์ด์ ๋ฐฐ์๋ณด๋ฉด.. ์ฒซ์ค์์ ์ ๋ ฌ์ ํ ํ์ ์์ด ํ๋ฒ์ ์ด๋ ๊ฒ๋ ๊ฐ๋ฅํ๋ค ใ ใ ๐
func solution(_ strings:[String], _ n:Int) -> [String] {
return strings.sorted{ Array($0)[n] == Array($1)[n] ? $0 < $1 : Array($0)[n] < Array($1)[n] }
}
์๊ณ ๋ฆฌ์ฆ์์ ์ฌ์ฉ๋ String.Index๊ฐ ๊ถ๊ธํ๋ค๋ฉด?? ๐ 2020/12/17 - [iOS [Swift]/๊ธฐ์ด๋ฅผ ํํํ!] - [Swift] String.Index
์ถ์ : ํ๋ก๊ทธ๋๋จธ์ค ๋ฌธ์์ด ๋ด ๋ง์๋๋ก ์ ๋ ฌํ๊ธฐ
'iOS [Swift] > ์๊ณ ๋ฆฌ์ฆ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ํ๋ก๊ทธ๋๋จธ์ค] ๋ ์ ์ ์ฌ์ด์ ํฉ (0) | 2020.12.18 |
---|---|
[ํ๋ก๊ทธ๋๋จธ์ค] ๋๋์ด ๋จ์ด์ง๋ ์ซ์ ๋ฐฐ์ด (0) | 2020.12.18 |
[ํ๋ก๊ทธ๋๋จธ์ค] ๊ฐ์ด๋ฐ ๊ธ์ ๊ฐ์ ธ์ค๊ธฐ (0) | 2020.12.17 |
[ํ๋ก๊ทธ๋๋จธ์ค] 3์ง๋ฒ ๋ค์ง๊ธฐ (0) | 2020.12.16 |
[ํ๋ก๊ทธ๋๋จธ์ค] 2016๋ (0) | 2020.12.16 |