From 545894d74d6bfc6b20e90fa20333b5ae6092f125 Mon Sep 17 00:00:00 2001 From: HISEHOONAN Date: Mon, 31 Mar 2025 11:29:29 +0900 Subject: [PATCH 1/3] Solution contain-duplicate, top-k-frequent-element, two-sum --- contains-duplicate/HISEHOONAN.swift | 17 ++++++++++++++++ top-k-frequent-elements/HISEHOONAN.swift | 26 ++++++++++++++++++++++++ two-sum/HISEHOONAN.swift | 20 ++++++++++++++++++ 3 files changed, 63 insertions(+) create mode 100644 contains-duplicate/HISEHOONAN.swift create mode 100644 top-k-frequent-elements/HISEHOONAN.swift create mode 100644 two-sum/HISEHOONAN.swift diff --git a/contains-duplicate/HISEHOONAN.swift b/contains-duplicate/HISEHOONAN.swift new file mode 100644 index 000000000..c65f5c2cb --- /dev/null +++ b/contains-duplicate/HISEHOONAN.swift @@ -0,0 +1,17 @@ +// +// Contains_Duplicate.swift +// Algorithm +// +// Created by 안세훈 on 3/31/25. +// + +import Foundation + +class Solution { + func containsDuplicate(_ nums: [Int]) -> Bool { + return nums.count != Set(nums).count + //Set : 중복된 값을 갖지 않음. + //문제로 주어진 배열의 개수와 중복을 갖지않는 Set연산의 개수의 차이 비교 + //비교 후 다르다면 true 같다면 false + } +} diff --git a/top-k-frequent-elements/HISEHOONAN.swift b/top-k-frequent-elements/HISEHOONAN.swift new file mode 100644 index 000000000..f93c27ee4 --- /dev/null +++ b/top-k-frequent-elements/HISEHOONAN.swift @@ -0,0 +1,26 @@ +// +// Top_K_Frequent_Elements .swift +// Algorithm +// +// Created by 안세훈 on 3/31/25. +// + +class Solution { + func topKFrequent(_ nums: [Int], _ k: Int) -> [Int] { + var dic : [Int : Int] = [:] + + for i in nums { + dic[i] = dic[i , default : 0] + 1 + } + + var sortarray = dic.sorted{$0.value > $1.value} + var answer : [Int] = [] + + for i in 0.. [Int] { + for i in 0...nums.count-1{ + for j in i+1...nums.count-1{ + if nums[i] + nums[j] == target{ + return [i,j] + } + } + } + return [] + } + //i번째 인덱스의 값과, j번째 인덱스의 값이 target과 같으면 i,j를 리턴 +} From 7a636df5fc69c052554270d3836b8974210144c9 Mon Sep 17 00:00:00 2001 From: HISEHOONAN Date: Mon, 31 Mar 2025 14:13:21 +0900 Subject: [PATCH 2/3] Solution longest-consecutive-sequence --- longest-consecutive-sequence/HISEHOONAN.swift | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 longest-consecutive-sequence/HISEHOONAN.swift diff --git a/longest-consecutive-sequence/HISEHOONAN.swift b/longest-consecutive-sequence/HISEHOONAN.swift new file mode 100644 index 000000000..3a4d33276 --- /dev/null +++ b/longest-consecutive-sequence/HISEHOONAN.swift @@ -0,0 +1,31 @@ +// +// Longest_Consecutive_Sequence.swift +// Algorithm +// +// Created by 안세훈 on 3/31/25. +// + +///https://leetcode.com/problems/longest-consecutive-sequence/ + + +class Solution { + func longestConsecutive(_ nums: [Int]) -> Int { + guard nums.count != 0 else { return 0 } + + var sortednums = Array(Set(nums)).sorted() //중복제거 + 오름차순 정렬 + var maxcount = 1 //최대 카운드 + var count = 1 // 연산용 카운트 + + for i in 0.. Date: Wed, 2 Apr 2025 09:05:59 +0900 Subject: [PATCH 3/3] Solution House Robber --- house-robber/HISEHOONAN.swift | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 house-robber/HISEHOONAN.swift diff --git a/house-robber/HISEHOONAN.swift b/house-robber/HISEHOONAN.swift new file mode 100644 index 000000000..31aa34ca4 --- /dev/null +++ b/house-robber/HISEHOONAN.swift @@ -0,0 +1,27 @@ +// +// House_Robber .swift +// Algorithm +// +// Created by 안세훈 on 3/31/25. +// +///https://leetcode.com/problems/house-robber/description/ + +class Solution { + //Dynamic Programming + func rob(_ nums: [Int]) -> Int { + + if nums.count == 1 {return nums[0]} //배열이 1개인 경우 + if nums.count == 2 {return max(nums[0],nums[1])} //배열이 2개인 경우 + + var dp = [nums[0], max(nums[0],nums[1])] + //제일 base가 되는 두 값을 찾는게 제일 중요함. + //nums[0]은 nums[1]보다 무조건 작아야함. + for i in 2..