- Get link
- Other Apps
Programming question given to me at leetcode.
Given two strings representing very large integer numbers ("123" , "30") return a string representing the sum of the two numbers ("153").
The above question can be rephrased as:-
Add two numbers represented by strings
Sum of two large numbers
Add Two Very Large Number (out of range)
How to add two string numbers
Solution in Swift programming language:
func add(first: String, second: String) {
var input1 = first
var input2 = second
var firstArray = Array(first)
var secondArray = Array(second)
//both inputs should have same number of characters
var differenceOfCharacter = 0
if firstArray.count > secondArray.count {
differenceOfCharacter = firstArray.count - secondArray.count
(0..<differenceOfCharacter).forEach { (_) in
input2 = "0" + input2
}
} else {
differenceOfCharacter = secondArray.count - firstArray.count
(0..<differenceOfCharacter).forEach { (_) in
input1 = "0" + input1
}
}
firstArray = Array(input1)
secondArray = Array(input2)
var reminder = 0
var sum = 0
var sumString = ""
for (index,_) in firstArray.enumerated().reversed() {
let a = firstArray[index].wholeNumberValue ?? 0
let b = secondArray[index].wholeNumberValue ?? 0
sum = (a + b + reminder) % 10
reminder = (a + b) / 10
sumString = "\(sum)" + sumString
}
print(sumString)
}
Comments
Post a Comment