算法刷题-大数加法

描述

以字符串的形式读入两个数字,编写一个函数计算它们的和,以字符串形式返回。

示例1

输入: "1","99" 复制 返回值: "100" 复制 说明: 1+99=100

示例2

输入: "114514","" 复制 返回值: "114514"

java 复制代码
import java.util.*;


public class Solution {
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     * 计算两个数之和
     * @param s string字符串 表示第一个整数
     * @param t string字符串 表示第二个整数
     * @return string字符串
     */
    public String solve (String s, String t) {
        // write code here
        int s1 = s.length()-1,s2 = t.length()-1,jin = 0;
        StringBuffer res = new StringBuffer();
        Stack stack = new Stack();
        while(s1 >= 0 || s2 >= 0 || jin !=0){
            jin += s1 >=0 ? s.charAt(s1--) - '0' : 0;
            jin += s2 >=0 ? t.charAt(s2--) - '0' : 0;
            stack.push(jin%10);
            jin /=10;
        }

        while(!stack.isEmpty()){
            res.append(stack.pop());
        }
        return res.toString();
    }
}
相关推荐
专注VB编程开发20年3 小时前
压栈顺序是反向(从右往左)的,但正因为是反向压栈,所以第一个参数反而离栈顶(ESP)最近。
java·开发语言·算法
椰汁菠萝3 小时前
spring boot下使用gdal解析tif文件
java·native·gdal·0
Xの哲學3 小时前
Linux Select 工作原理深度剖析: 从设计思想到实现细节
linux·服务器·网络·算法·边缘计算
better_liang3 小时前
每日Java面试场景题知识点之-ELK日志分析
java·elk·微服务·面试题·日志分析·企业级开发
funnycoffee1233 小时前
F5 Big IP如何设置web和SSH登录的白名单
前端·tcp/ip·ssh
图南随笔3 小时前
Spring Boot(二十三):RedisTemplate的Set和Sorted Set类型操作
java·spring boot·redis·后端·缓存
say_fall3 小时前
C++ 类与对象易错点:初始化列表顺序 / 静态成员访问 / 隐式类型转换
android·java·开发语言·c++
JarvanMo3 小时前
国产 App,求你放过我的 iPhone 电量吧!
前端
先飞的笨鸟3 小时前
2026 年 Expo + React Native 项目接入微信分享完整指南
前端·ios·app
angelQ4 小时前
Vercel部署:前后端分离项目的整体部署流程及问题排查
前端·javascript