leetcode做题笔记43

这篇具有很好参考价值的文章主要介绍了leetcode做题笔记43。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

 给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形式。

注意:不能使用任何内置的 BigInteger 库或直接将输入转换为整数。

目录

思路一:

分析:

总结:


思路一:

char * multiply(char * num1, char * num2)
{
    int length1 = strlen(num1);
    int length2 = strlen(num2);
    int totalLength = length1 + length2;                   
    
    int charIndex = 0;                                
    int valueIndex = 0;
    
    int *value = (int *)malloc(sizeof(int) * totalLength);
    memset(value, 0, sizeof(int) * totalLength);
    char *result = (char *)malloc(sizeof(char) * (totalLength + 1));
    for(int i = length1  - 1; i >= 0; i--)
    {
        for(int j = length2 - 1; j >= 0; j--)
        {
            value[i + j + 1] += (num1[i] - '0') * (num2[j] - '0');
        }
    }
    for(int i= totalLength - 1; i > 0; i--)        
    {
        value[i - 1] += value[i] / 10;
        value[i] %= 10;
    }
    while(value[valueIndex] == 0 && valueIndex < totalLength -1 ) 
    {
        valueIndex++;                                  
    }
    while(valueIndex < totalLength)
    {
        result[charIndex++] = value[valueIndex++] + '0';
    }
    result[charIndex] = '\0';                        
    return result;
    
    
}

时间复杂度O(n*m),空间复杂度O(n)

分析:

本题一开始先将两个字符串数组处理为数字数组,再进行计算,后将数字数组转换为字符串数组后输出。

总结:

本题主要考察了对字符串的应用,将两个字符串数组转换为数字数组即可解答文章来源地址https://www.toymoban.com/news/detail-606651.html

到了这里,关于leetcode做题笔记43的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【字符串 简单】LeetCode 14. 最长公共前缀 Java

    我的思路: 给字符串数组按照字符串的长度从长到短排序,因为最长公共前缀最长的话,也只能是字符串数组中最短的那一个字符串 设置一个index变量,表示当前正在检查字符数组中所有字符串的index位置 循环遍历字符串数组n遍,n也就是最长公共前缀的长度 其他思路,方法

    2024年02月15日
    浏览(27)
  • leetcode 567. 字符串的排列(滑动窗口-java)

    难度 -中等 leetcode567. 字符串的排列 给你两个字符串 s1 和 s2 ,写一个函数来判断 s2 是否包含 s1 的排列。如果是,返回 true ;否则,返回 false 。 换句话说,s1 的排列之一是 s2 的 子串 。 示例 1: 输入:s1 = “ab” s2 = “eidbaooo” 输出:true 解释:s2 包含 s1 的排列之一 (“ba”

    2024年02月10日
    浏览(28)
  • Java学习笔记:字符串

    目录 Java学习笔记:字符串 String 创建String对象 内存模型 String 比较 Scanner验证键入的字符串本质是new出来的 练习案例:判断账户和密码是否一致 遍历字符串 统计字符次数 字符串反转 StringBuilder StringBuilder构造方法 链式编程 拼接字符串 StringJoiner 总结 必须学习使用JDK API帮助

    2024年03月17日
    浏览(80)
  • 【Py/Java/C++三种语言详解】LeetCode每日一题240109【动态规划】LeetCode2707题、字符串中的额外字符

    给你一个下标从 0 开始的字符串 s 和一个单词字典 dictionary 。你需要将 s 分割成若干个 互不重叠 的子字符串,每个子字符串都在 dictionary 中出现过。 s 中可能会有一些 额外的字符 不在任何子字符串中。 请你采取最优策略分割 s ,使剩下的字符 最少 。 示例 1: 输入 :s =

    2024年01月16日
    浏览(35)
  • Java【手撕滑动窗口】LeetCode 438. “字符串中所有异位词“, 图文详解思路分析 + 代码

    各位读者好, 我是小陈, 这是我的个人主页, 希望我的专栏能够帮助到你: 📕 JavaSE基础: 基础语法, 类和对象, 封装继承多态, 接口, 综合小练习图书管理系统等 📗 Java数据结构: 顺序表, 链表, 堆, 二叉树, 二叉搜索树, 哈希表等 📘 JavaEE初阶: 多线程, 网络编程, TCP/IP协议, HTTP协议

    2024年02月10日
    浏览(29)
  • 【Py/Java/C++三种语言详解】LeetCode每日一题240117【哈希集合】LeetCode2744、最大字符串匹配数目

    LeetCode2744、最大字符串匹配数目 给你一个下标从 0 开始的数组 words ,数组中包含 互不相同 的字符串。 如果字符串 words[i] 与字符串 words[j] 满足以下条件,我们称它们可以匹配: 字符串 words[i] 等于 words[j] 的反转字符串。 0 = i j words.length 请你返回数组 words 中的 最大 匹配数

    2024年01月18日
    浏览(38)
  • LeetCode - 1371 每个元音包含偶数次的最长子字符串(Java & JS & Python & C)

    题目来源 1371. 每个元音包含偶数次的最长子字符串 - 力扣(LeetCode) 题目描述 给你一个字符串  s  ,请你返回满足以下条件的最长子字符串的长度:每个元音字母,即 \\\'a\\\',\\\'e\\\',\\\'i\\\',\\\'o\\\',\\\'u\\\' ,在子字符串中都恰好出现了偶数次。 示例 示例 1 输入:s = \\\"eleetminicoworoep\\\" 输出:

    2024年01月25日
    浏览(31)
  • Java字符串常用函数 详解5000字 (刷题向 / 应用向)

    直接定义字符串是指使用双引号表示字符串中的内容,例如\\\"Hello Java\\\"、\\\"Java 编程\\\"等。具体方法是用字符串常量直接初始化一个 String 对象,示例如下: 1.    String str=\\\"Hello Java\\\"; 或者 1.    String str; 2.    str=\\\"Hello Java\\\"; 注意:字符串变量必须经过初始化才能使用。 String str2

    2024年02月05日
    浏览(28)
  • 黑马程序员Java零基础视频教程笔记-字符串

    1. API 应用程序编程接口 2. 简单理解 API就是别人已经写好的东西,我们不需要自己编写,直接使用即可 3. Java API 指的就是JDK中提供的各种功能的Java类 这些类将底层的实现封装了起来,我们不需要关心这些类是如何实现的,只要学习这些类如何使用即可 4. 样例 1. 字符串学习

    2024年02月01日
    浏览(36)
  • ( 字符串) 205. 同构字符串 ——【Leetcode每日一题】

    难度:简单 给定两个字符串 s 和 t ,判断它们是否是同构的。 如果 s 中的字符可以按某种映射关系替换得到 t ,那么这两个字符串是同构的。 每个出现的字符都应当映射到另一个字符,同时不改变字符的顺序。不同字符不能映射到同一个字符上,相同字符只能映射到同一个

    2024年02月02日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包