티스토리 뷰
728x90
https://leetcode.com/problems/two-sum/
정수의 배열로 이루어진 nums로 각각 더해서 target의 값과 같으면 해당 index들을 리턴
내 풀이
class Solution {
func twoSum(_ nums: [Int], _ target: Int) -> [Int] {
var result: [Int] = []
for (idx, num) in nums.enumerated() {
for idx2 in (idx + 1) ..< nums.count {
if num + nums[idx2] == target {
return [idx, idx2]
}
}
}
return result
}
}
Solution().twoSum([2, 7, 11, 15], 9)
- enumerated()를 이용해 index를 구함
- 두번째 반복문에서 nums의 index + 1 ~ nums의 갯수 만큼 반복 하게 함
- 예)
- 첫번째 반복 [2, 7], [2, 11], [2, 15]
- 두번째 반복 [7, 11], [7, 15]
- 세번째 반복 [11, 15]
- 각자 반복될때마다 요소 + 그다음 요소를 더해 target의 값과 같으면 해당 index 리턴
- result는 반복문 내 조건문에 해당하지 않을시 빈 배열 리턴
배운것
enumerated()
n은 index (0부터 시작),
x는 배열의 요소 반환합니다.
예제
for (n, x) in "Swift".enumerated() {
print("\(n): '\(x)'")
}
// Prints "0: 'S'"
// Prints "1: 'w'"
// Prints "2: 'i'"
// Prints "3: 'f'"
// Prints "4: 't'"
728x90
'알고리즘' 카테고리의 다른 글
[Swift 알고리즘] - Best Time to Buy and Sell Stock (LeetCode) (0) | 2023.08.22 |
---|---|
[Swift 알고리즘] - Valid Palindrome (LeetCode) (0) | 2023.08.22 |
[Swift 알고리즘] - Valid Anagram (LeetCode) (0) | 2023.08.16 |
[Swift 알고리즘] - Contains Duplicate (LeetCode) (0) | 2023.08.08 |
[Swift 알고리즘] - 영어가 싫어요 (Programmers) (0) | 2022.12.13 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- Swift Leetcode
- Swift inout
- swift programmers
- Swift 프로퍼티
- removeLast()
- Swift joined()
- 2023년 회고
- RTCCameraVideoCapturer
- iOS error
- swift protocol
- Swift init
- Class
- 원티드 프리온보딩
- swift 고차함수
- Swift 프로그래머스
- ios
- Swift joined
- Swift
- Swift ModernRIBs
- Swift final
- Swift RIBs
- Swift 내림차순
- swift (programmers)
- swift reduce
- RIBs tutorial
- swift property
- Combine: Asynchronous Programming with Swift
- Swift Error Handling
- Swift 알고리즘
- CS 네트워크
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함