ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • μ œλ„€λ¦­ ν•¨μˆ˜ map(_:) μ‚¬μš©ν•˜κΈ°
    General/πŸ’‘ Algorithm 2021. 2. 25. 23:55

    Swift μΉ΄ν…Œκ³ λ¦¬μ—λ„ ν•΄λ‹Ήλ˜μ§€λ§Œ,

    처음 μ‚¬μš©ν•΄μ•Όκ² λ‹€κ³  μƒκ°ν•œ 것이 μ•Œκ³ λ¦¬μ¦˜ 문제λ₯Ό ν’€λ©΄μ„œμ΄κΈ° λ•Œλ¬Έμ— 이 μͺ½μ— 글을 올리게 λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

     

    ν˜„μž¬ μ œκ°€ μ‚¬μš©ν•˜λ €λŠ” λͺ©μ μ€ 단 ν•œ 가지 μž…λ‹ˆλ‹€!


     

    λͺ©μ 

    λΆˆν•„μš”ν•œ 자료ꡬ쑰 μ΄ˆκΈ°ν™” μ½”λ“œλ₯Ό μ—†μ• κ³ , for-in 문을 μ‚¬μš©ν•˜μ§€ μ•ŠλŠ” κΉ”λ”ν•œ μ½”λ“œλ₯Ό 짜기 μœ„ν•΄μ„œ

    λ‹€λ₯Έ ν™œμš© 방법은 ν•„μš”ν•  λ•Œ λ‚˜μ€‘μ— μ΅ν˜€μ„œ ν™œμš©ν•˜λ €κ³  ν•©λ‹ˆλ‹€.


     

    맡을 μ‚¬μš©ν•  수 μžˆλŠ” κ³³

    λ°°μ—΄, λ”•μ…”λ„ˆλ¦¬, μ„ΈνŠΈ λ“± Sequence, Collection ν”„λ‘œν† μ½œ μ„ μ±„νƒν•œ νƒ€μž…κ³Ό μ˜΅μ…”λ„


     

    맡 ν˜ΈμΆœμ‹œ μΌμ–΄λ‚˜λŠ” 일

    1. μ»¨ν…Œμ΄λ„ˆκ°€ λ‹΄κ³  μžˆλŠ” 각각의 값을 νŒŒλΌλ―Έν„°λ‘œ 전달받은 ν•¨μˆ˜μ— μ μš©ν•©λ‹ˆλ‹€.

     

    2. 값듀을 λ‹€μ‹œ 포μž₯ν•˜μ—¬ μƒˆλ‘œμš΄ μ»¨ν…Œμ΄λ„ˆμ— 포μž₯ν•˜μ—¬ λ°˜ν™˜ν•©λ‹ˆλ‹€.

     

    λͺ¨λ“  값을 μˆœνšŒν•˜λ―€λ‘œ μ‹œκ°„λ³΅μž‘λ„λŠ” O(n) 이 λ˜κ² μŠ΅λ‹ˆλ‹€!


     

    map 을 μ‚¬μš©ν•œ μ½”λ“œμ™€ μ‚¬μš©ν•˜μ§€ μ•Šμ€ μ½”λ“œμ˜ 비ꡐ

    1) map λ―Έμ‚¬μš© 예

    var priorities = [3, 4, 2, 1]
    
    /* 1. 값듀을 넣을 자료ꡬ쑰의 μ΄ˆκΈ°ν™” */
    var waitingList = [(Int,Int)]()
    
    /* 2. for-in 으둜 μˆœνšŒν•˜μ—¬ κ°’ μΆ”κ°€ */
    for index in priorities.indices {
      waitingList.append((Int(index), priorities[index]))
    }
    
    // priorities: [ (0, 3), (1, 4), (2, 2), (3, 1) ]

     

    2) map μ‚¬μš© 예

    var priorities = [3, 4, 2, 1]
    
    /* μœ„ μ½”λ“œμ˜ a,b 과정을 ν•œ μ€„λ‘œ 정리 κ°€λŠ₯ */
    var waitingList = priorities.enumerated().map{ ($0.offset, $0.element) }
    
    // priorities: [ (0, 3), (1, 4), (2, 2), (3, 1) ]

     

    λ§Œμ•½ 2) 의 μ½”λ“œκ°€ 이해가 μ•ˆκ°€μ‹ λ‹€λ©΄, 클둜져 μΆ•μ•½ 문법이 아직 μ΅μˆ™ν•˜μ§€ μ•Šμ•„μ„œμΌ κ²ƒμž…λ‹ˆλ‹€.

     

    이번 κΈ°νšŒμ— λ³΅μŠ΅ν• κ²Έ κΈ€λ‘œ λ‹€μ‹œ ν•œλ²ˆ 정리해 λ΄μ•Όκ² λ„€μš”!

     

    κ΄€λ ¨ κΈ€: 

     

    끝!


     

    'General > πŸ’‘ Algorithm' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€

    isEmpty 와 count == 0  (0) 2021.02.25

    λŒ“κΈ€

μ–΄μ œλ³΄λ‹€ λ°œμ „ν•œ λ‚˜