A community driven project to provide solutions for LeetCode problems in the Julia programming language.
- Fork this project.
- Select a problem template file under the
src/unresolved/
folder, open and write the code, after finishing please MOVE / CUT to thesrc/problems
folder. - Write test cases inside the
test/problems
folder to make sure the solutions work as expected. - For some common components, please put them into the
src/common.jl
file and add test cases intest/common.jl
. - Run
pkg> test
locally to make sure test passes. The test will also format your codes. - Commit your changes and make a pull request.
- You may also WATCH this project to help review other's PR or STAR this project to spread JuliaLang to others.
# ---
# title: 1. Two Sum
# id: problem1
# author: Tian Jun
# date: 2020-10-31
# difficulty: Easy
# categories: Array, Hash Table
# link: <https://leetcode.com/problems/two-sum/description/>
# hidden: true
# ---
#
# Given an array of integers `nums` and an integer `target`, return _indices of
# the two numbers such that they add up to`target`_.
#
# You may assume that each input would have **_exactly_ one solution**, and you
# may not use the _same_ element twice.
#
# You can return the answer in any order.
#
#
#
# **Example 1:**
#
#
#
# Input: nums = [2,7,11,15], target = 9
# Output: [0,1]
# Output: Because nums[0] + nums[1] == 9, we return [0, 1].
#
#
# **Example 2:**
#
#
#
# Input: nums = [3,2,4], target = 6
# Output: [1,2]
#
#
# **Example 3:**
#
#
#
# Input: nums = [3,3], target = 6
# Output: [0,1]
#
#
#
#
# **Constraints:**
#
# * `2 <= nums.length <= 103`
# * `-109 <= nums[i] <= 109`
# * `-109 <= target <= 109`
# * **Only one valid answer exists.**
#
#
## @lc code=start
using LeetCode
function two_sum(nums::Vector{Int}, target::Int)::Union{Nothing,Tuple{Int,Int}}
seen = Dict{Int,Int}()
for (i, n) in enumerate(nums)
m = target - n
if haskey(seen, m)
return seen[m], i
else
seen[n] = i
end
end
end
## @lc code=end
- Change date and author to the date of the answer and your own name. If it is not convenient to provide the date or author, you can delete the date and author information above.
- Note on comments in coding:
- line starting with
##
is the Julia code comments. - line starting with a single
#
will be parsed as markdown comment.
- line starting with