jeoneee
수복씨의 탐방 일지
jeoneee
  • 분류 전체보기 (35)
    • 😶‍🌫️ 탐방 일지 (31)
      • 한국 (23)
      • 베트남 (8)
    • 📝 iOS (4)
      • 💡 프로젝트 (1)
      • 잡다한 공부 기록 (3)

인기 글

최근 글

태그

  • 아차산역맛집
  • 성수맛집
  • 호이안올드타운
  • 다낭
  • 성수5to7
  • 뚝섬역카페
  • 서울숲카페수플레
  • 성수카페수플레
  • 서울숲카페
  • 5to7
  • 서울후르츠산도
  • 호이안
  • 성수카페
  • 다낭맛집
  • 성수5to7수플레
  • 북촌한옥마을라멘
  • 도마유즈라멘안국
  • 고양이카페
  • 다낭로컬맛집
  • 서울라멘맛집내돈내산

최근 댓글

250x250
hELLO · Designed By 정상우.
jeoneee

수복씨의 탐방 일지

📝 iOS/잡다한 공부 기록

22.10.26 / Array 돌아보기 ( max(), firstIndex(of: ) )

2022. 10. 26. 21:59
728x90

 

오늘 프로그래머스로 문제를 풀다가 나의 코드의 충격을 느껴 기록을 한다..😦

 

문제와 나의 코드는 아래와 같다.

 

 

# 문제 설명

 

정수 배열 array가 매개변수로 주어질 때, 가장 큰 수와 그 수의 인덱스를 담은 배열을 return 하도록 solution 함수를 완성해보세요.

 

import Foundation

func solution(_ array:[Int]) -> [Int] {
    var maxNum = 0
    var numIndex = 0
    var count = 0
    
    for i in array {
        if maxNum < i {
            maxNum = i
            numIndex = count
        }
        count += 1
    }
    return [maxNum, numIndex]
}

 

코드를 작성하면서..뭔가 더 간결하게 작성할 수 있을 것 같지만.. 나는 그 방법이 뭔지 모르니까 내 기준에서 코드를 작성했다..

코드 통과 후 다른 사람들이 올린 코드 문법을 보며 살짝(?) 신기했다..

그중 처음 보는 문법이 있어서 학습 시작!

 

그것은 바로 max() 와 firstIndex(of:) 이다.

 

var numbers: [Int] = [4,7,2,5,8,1,3,2]

numbers.max() // Optional(8)
numbers.max()! // 8


numbers.firstIndex(of: 3) // Optional(6)
numbers.firstIndex(of: 5)! // 3

 

위의 코드와 같이 numbers.max()는 배열의 최댓값을 얻을 수 있고,

numbers.firstIndex(of:)는 배열에서 내가 원하는 값의 인덱스를 찾을 수 있다 !! 

 

max()와 firstIndex(of:)는 반환값이 Optional 값이니까 언래핑 해주는 것을 잊지말자 !!

 

이러한 개념들을 이용하면 위의 장대한 나의 코드들은.. 아래와 같이 단순해진다..

 

func solution(_ array:[Int]) -> [Int] {
    return [array.max()!, array.firstIndex(of: array.max()!)!]
}

 

하핫.. 오늘도 이렇게 배워가는 나 화이팅이다..🧐

 

 

 

728x90
저작자표시 비영리 변경금지 (새창열림)

'📝 iOS > 잡다한 공부 기록' 카테고리의 다른 글

22.11.1 / String, Array 돌아보기 (reversed(), sort())  (0) 2022.11.01
22.10.27 / String 돌아보기 ( contains() )  (0) 2022.10.27
    '📝 iOS/잡다한 공부 기록' 카테고리의 다른 글
    • 22.11.1 / String, Array 돌아보기 (reversed(), sort())
    • 22.10.27 / String 돌아보기 ( contains() )
    jeoneee
    jeoneee

    티스토리툴바