Files
obsidian/АиСД/Задачи/LeetCode/Add Strings.md
T
roma-dxunvrs 0e6e583e6d
deploy / Pull and Restart (push) Successful in 17s
refactor: wiki links -> md links
2026-09-22 08:52:23 +03:00

24 lines
903 B
Markdown

Leetcode #415 | #Easy | [Два указателя](../../Методы/Два%20указателя.md) | [Математика](../../Методы/Математика.md)
## Идея
Сложение столбиком как в [Add Two Numbers](Add%20Two%20Numbers.md)
## Big-O
- Время ```O(max(M,N))```
- Память ```O(max(M,N))```
## Код
```Java
class Solution {
public String addStrings(String num1, String num2) {
StringBuilder res = new StringBuilder();
int i = num1.length() - 1, j = num2.length() - 1, carry = 0;
while (i >= 0 || j >= 0 || carry > 0) {
int a = (i >= 0) ? num1.charAt(i) - '0' : 0;
int b = (j >= 0) ? num2.charAt(j) - '0' : 0;
int sum = a + b + carry;
carry = sum / 10;
res.append(sum % 10);
i--; j--;
}
return res.reverse().toString();
}
}
```